public function query() { $url = 'http://m.kuaidi100.com/query'; $url .= '?type=' . $this->type . '&postid=' . $this->postId; $url .= '&id=' . $this->id . '&valicode=' . $this->validateCode; $url .= '&temp=' . $this->temp; $referer = 'http://m.kuaidi100.com/index_all.html'; $curl = new \Curl\Curl(); $curl->setUserAgent($_SERVER['HTTP_USER_AGENT']); $curl->setReferrer($referer); $curl->setOpt(CURLOPT_HTTP_VERSION, CURL_HTTP_VERSION_1_0); $curl->post($url); if ($curl->error) { $response = array('errno' => $curl->error_code, 'message' => $curl->error_message); } else { $data = json_decode($curl->response); if ($data->status == 200) { $response = array('errno' => 0, 'data' => $data); } else { throw new \Exception($data->message, $data->status); } } $curl->close(); return $response; }
/** * Signin with rest api to get token, or display login form. */ protected function signin() { // redirect to home if logged if ($_SESSION && $_SESSION['USER_LOGGED']) { $this->logger->debug("Redirect to home"); header("Location: /"); exit; } $data = array(); // check login if (!empty($this->postvalues)) { $curl = new Curl\Curl(); $curl->post($this->config['login_url'], array('username' => $this->postvalues['email'], 'password' => $this->postvalues['password'])); if (!$curl->error) { $token = $curl->response_headers[$this->config['auth_header_name']]; // store token in session $_SESSION['AUTH_TOKEN'] = $token; $_SESSION['USER_LOGGED'] = true; $this->logger->debug("Add token to session, USER_LOGGED = " . $_SESSION['USER_LOGGED']); $curl->close(); // redirect to home header("Location: /"); exit; } else { // treat error // TODO externalize messages switch ($curl->error_code) { case "401": $data['login_errorMessage'] = "L'email ou le mot de passe n'est pas valide"; break; default: $data['login_errorMessage'] = "Une erreur technique est survenue"; break; } $this->logger->debug("Error : code=" . $curl->error_code . ", message=" . $data['login_errorMessage']); $curl->close(); } } $view = "signin/signin.html.twig"; $this->returnView($view, $data); }
public function sendAccessTokenRequest($requestTokenUrl, $params) { $this->verifyState($_GET['state']); $curl = new \Curl\Curl(); $curl->verbose(); $curl->post($requestTokenUrl, $params); if ($curl->error) { $errorcode = $curl->error_code; $curl->close(); throw new \Exception("Something went wrong, unable to send request for token: " . $errorcode); } else { $token = $this->storeTokenData($curl->response); return $token; } }
$response_params = ['success' => false, 'message' => '', 'data' => []]; if (empty($request_params)) { $response_params['message'] = 'No parameters supplied'; } else { if (!isset($request_params['url']) || empty($request_params['url'])) { $response_params['message'] = 'Image URL parameter missing'; } else { $source_url = 'http://www.nudedetect.com/'; $curl = new \Curl\Curl(); $curl->setReferrer($source_url); $curl->post($source_url . 'process.php', ['url' => $request_params['url']]); if ($curl->error) { $response_params['message'] = $curl->error_code; } else { $image_check_response = strtolower($curl->response); $curl->close(); $image_check = preg_match_all("/([0-9]+\\.[0-9]+%)<\\/h[0-9]>\\s([a-z]+)/i", $image_check_response, $image_check_data, PREG_PATTERN_ORDER); if (!$image_check) { $response_params['message'] = 'Image check failed'; } else { $response_params['data'] = ['nude' => $image_check_data[1][0], 'minimal' => $image_check_data[1][1]]; $response_params['message'] = 'Image processed successfully'; $response_params['success'] = true; } } } } return $response->write(json_encode($response_params))->withHeader('Content-Type', 'application/json'); } }); $app->run();