Curl
코드를 PHP
안에 실행하고 싶습니다.PHP 내부의 컬 실행
curl -X POST 'https://api.sightengine.com/1.0/check.json' \
-F 'api_user=1********5' \
-F 'api_secret=q**************Q' \
-F '[email protected]/full/path/to/image.jpg' \
-F 'models=nudity'
위의 코드에는 api에 전달할 매개 변수가 4 개 있습니다.
function image()
{
$body_data = http_build_query(array('api_user' => 1********5,
'api_secret' => 'q**************Q',
'media' => $_FILES['image']['name'],
'models' => 'nudity'));
// Configure cURL
$image_curl = curl_init();
curl_setopt($image_curl, CURLOPT_URL, "https://api.sightengine.com/1.0/check.json");
curl_setopt($image_curl, CURLOPT_POST, true); // Use POST
curl_setopt($image_curl, CURLOPT_POSTFIELDS, $body_data); // Setup post body
curl_setopt($image_curl, CURLOPT_RETURNTRANSFER, true); // Receive server response
// Execute request and read responce
$session_response = curl_exec($image_curl);
$response = json_decode($session_response);
print_r($response);
}
응답 :
stdClass 개체 ([상태] => 실패 [신청] => stdClass 개체 ([ID] => req_2365jHPuLcC6Bydh7WNd7 [타임 스탬프 PHP 코드 아래 I는 실행하려고 => 1512542730.57 [동작] => 0) [에러 => stdClass 개체 ([형태] => argument_error [코드] => 4 메시지] => 미디어 없음 지정된)) 지금
문제 이 (가) media
및입니다.매개 변수
media
매개 변수의 파일 경로에 어떤 문제가 있는지 잘 모르겠습니다. 그리고 나는 경로의 앞쪽에@
을 추가하고 싶습니다.$body_data
배열의 모든 매개 변수를 정의한 다음CURLOPT_URL
에 올바르게 전달했습니다.
이 문제를 해결하는 데 도움을주십시오. 내가 이것을 POSTMAN
에서 시도하면 잘 동작합니다. 미리 감사드립니다.
본 적이 있습니까? https://github.com/Sightengine/client-php - Guzzle without 79 lines of code .. –
업로드 이미지로 사용할 수 있습니까? 서버에 업로드되기 전에 의미. – Shihas
내 client-php 만 설치하면됩니까? 나는 실제로 그것을 얻지 않고있다. 이 일을 도와주세요. 그리고 저는 제 프로젝트에 codeigniter 프레임 워크를 사용합니다. – Shihas