我正在使用外部API webservice,它返回json输出true或false。我访问了一个像
这样的网址http://site.com/api/valid
它给了我这样的东西,看起来像json
"true"
现在我手动访问网址,但我现在想要从我的zend项目中以编程方式进行操作。我该怎么用才能正确得到结果
答案 0 :(得分:1)
有很多方法。最简单的方法是使用file_get_contents()
。
$result = file_get_contents("http://site.com/api/valid");
// if result is truly json
// data will be
// array( 0 => true)
$data = json_decode($result);
如果是流行的网络服务。可能已经为它编写了一个库。这是首选,因为它将处理错误情况和拐角情况。 Google首先围绕它。
答案 1 :(得分:1)
听起来你需要一种可以抓取端点的方法。嗯,有很多方法,但既然你已经在使用Zend,你可以阅读http://framework.zend.com/manual/1.11/en/zend.http.client.adapters.html
这是一个静态方法:
static function curl($url, $method, $params = array()){
$client = new Zend_Http_Client($url);
if($method == "POST"){
$client->setParameterPOST($params);
}else{
$client->setParameterGet($params);
}
$response = $client->request($method);
return $response->getBody();
}
或者使用php的原生方法$ response = file_get_contents($ url);
确保json_decode()您的回复。