0
'$ array'에서 'foreach'를 통해 JSON 객체를 가져오고 cURL을 사용하여 현재 데이터 객체를 게시 할 것으로 예상합니다.cURL JSON이 포함 된 오류 500 PHP
현재 500 오류가 발생하고 이유가 확실하지 않습니다.
<?php
$string = file_get_contents("/home/scott/sandbox/apitest/export.json");
$array = json_decode($string, true);
foreach ($array as $group) {
$Name = $group['Name'];
$Position = $group['Position'];
$Company = $group['Company'];
$Description = $group['Description'];
$Country = $group['Country'];
$Zip = $group['Zip'];
$City = $group['City'];
$State = $group['State'];
$Address = $group['Address'];
$Email = $group['Email'];
$Website = $group['Website'];
$Phonenumber = $group['Phonenumber'];
$CompanyNumber = $group['CompanyNumber'];
$CompanyName = $group['CompanyName'];
$RegAddressAddressLine1 = $group['RegAddressAddressLine1'];
$RegAddressAddressLine2 = $group['RegAddressAddressLine2'];
$RegAddressPostTown = $group['RegAddressPostTown'];
$RegAddressCounty = $group['RegAddressCounty'];
$RegAddressCountry = $group['RegAddressCountry'];
$RegAddressPostCode = $group['RegAddressPostCode'];
$CompanyCategory = $group['CompanyCategory'];
$CompanyStatus = $group['CompanyStatus'];
$CountryOfOrigin = $group['CountryOfOrigin'];
$DissolutionDate = $group['DissolutionDate'];
$IncorporationDate = $group['IncorporationDate'];
$URI = $group['URI'];
$myobj = array(
"data" => array(
"Name" => $Name,
"Position" => $Position,
"Company" => $Company,
"Description" => $Description,
"Country" => $Country,
"Zip" => $Zip,
"City" => $City,
"State" => $State,
"Address" => $Address,
"Email" => $Email,
"Website" => $Website,
"Phonenumber" => $Phonenumber,
"CompanyNumber" => $CompanyNumber,
"CompanyName" => $CompanyName,
"RegAddressAdressLine1" => $RegAddressAdressLine1,
"RegAddressAdressLine2" => $RegAddressAdressLine2,
"RegAddressPostTown" => $RegAddressPostTown,
"RegAddressCounty" => $RegAddressCounty,
"RegAddressCountry" => $RegAddressCountry,
"RegAddressPostCode" => $RegAddressPostCode,
"CompanyCategory" => $CompanyCategory,
"CompanyStatus" => $CompanyStatus,
"CountryOfOrigin" => $CountryOfOrigin,
"DissolutionDate" => $DissolutionDate,
"IncorporationDate" => $IncorporationDate,
"URI" => $URI
)
);
curl_setopt_array($curl, array(
CURLOPT_URL => "http://xx.xx.xx.xx:3001/derp/submission",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $myobj,
CURLOPT_HTTPHEADER => array(
"content-type: application/json"
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
// if ($err) {
// echo "cURL Error #:" . $err;
// } else {
// echo $response;
// }
}
?>
500은 서버 측 오류입니다. 아마도 입력을 확인하는 데 문제가있는 것 같습니다. 먼저 요청 된 형식을 확인하기 위해 서버로 보낸 원시 요청을 검사 한 다음 서버 측 로그를 검사하여 무엇이 실패했는지 확인합니다. –
내가 뭔가를 놓치고 있는지 확실하지 않지만 cURL 헤더를 application/json으로 설정했지만'$ myobj'는 PHP 배열입니다. 요청 데이터가'multipart/form-data' 또는'application/json'으로되어 있습니까? –