我在使用自定义编写的API时遇到了一些麻烦。
当我进行API调用时,它会随机返回任何内容。现在,通过执行相同的API调用临时修复此问题,直到返回某些内容。
API调用始终相同,代码本身(SDK和API)不会产生任何错误。
我在考虑连接问题?
有没有人知道如何妥善解决这个问题?
SDK代码:
function doGetRequest($request, $params = array()) {
$request = 'http://www.xxx.be/api/nl/'.$request.'?'.http_build_query($params);
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_RETURNTRANSFER => 1,
CURLOPT_URL => $request,
));
$resp = curl_exec($curl);
curl_close($curl);
return json_decode($resp);
} // doGetRequest
API代码:
public function getCompanyIdByUserId($userId) {
$sql = '
SELECT
company_member_company_id
FROM
ka_company_members
WHERE
company_member_member_id = ?
';
return db::getValue($sql, $userId);
}//getCompanyIdByUserId
当没有任何返回时,Curl_info会给我这个
["url"] => string(123) "http://xxx/nl/urldata/mijn_webcasts/43?key=xxx"
["content_type"]=>
string(29) "text/html; charset=iso-8859-1"
["http_code"]=>
int(500)
["header_size"]=>
int(199)
["request_size"]=>
int(154)
["filetime"]=>
int(-1)
["ssl_verify_result"]=>
int(0)
["redirect_count"]=>
int(0)
["total_time"]=>
float(0.005005)
["namelookup_time"]=>
float(1.4E-5)
["connect_time"]=>
float(4.8E-5)
["pretransfer_time"]=>
float(7.5E-5)
["size_upload"]=>
float(0)
["size_download"]=>
float(603)
["speed_download"]=>
float(120479)
["speed_upload"]=>
float(0)
["download_content_length"]=>
float(603)
["upload_content_length"]=>
float(0)
["starttransfer_time"]=>
float(0.004986)
["redirect_time"]=>
float(0)
["redirect_url"]=>
string(0) ""
["certinfo"]=>
array(0) {
}
}