wp_remote_get
不返回字符串,它返回一个数组,如果我们参考文档:
$response = wp_remote_get( \'http://www.example.com/index.html\' );
if( is_array($response) ) {
$header = $response[\'headers\']; // array of http header lines
$body = $response[\'body\']; // use the content
}
这里$response不是一个json字符串,而是一个包含头和主体的数组,主体包含一个json字符串。
因此:
function mcq_getMcApi($type){
// This function mcq_gets the information from "mcapi.ca" if required
$json = wp_remote_get("https://mcapi.ca/query/$ip/$type");
return json_decode($json,true);
}
成为:
function mcq_getMcApi($type){
// This function mcq_gets the information from "mcapi.ca" if required
$response = wp_remote_get("https://mcapi.ca/query/$ip/$type");
return json_decode($response[\'body\'],true);
}
请注意
wp_remote_get
将返回
WP_Error
对象,您应该检查它。任何一个这样的操作都失败了,您应该检查响应,因为它可能不是json字符串。