近期在学习微信公众号的二次开发,总体感觉上手比较容易,但是想深入还需一定的积累!通过近两个星期的学习,感觉买的书籍资料比较老旧,有一部分内容已经与现在的微信公众号开发存在差异,建议学习的朋友们可以买相关书籍作为入门使用,更多的新内容还是在网上搜索比较好。
近期,我在做api接入图灵机器人的时候就遇到了一点小问题,图灵机器人官方在请求方式上有所变更,如下图所以,以前采用get请求,如今改为post请求。
导致的结果就是很多资料上提供的方式现在并不好用,具体如下:
get请求接入的代码实现:
<?php $key = "317f8857e288a0b4bfc91fda3e08f4d3"; $info = "你漂亮么"; $url = "http://www.tuling123.com/openapi/api?key={$key}&info={$info}"; $str = file_get_contents($url); $json = json_encode($str); print_r($json); ?>
post请求接入的代码实现:
<?php $key = "317f8857e288a0b4bfc91fda3e08f4d3"; $info = "你漂亮么"; $url = "http://www.tuling123.com/openapi/api?key={$key}&info={$info}"; $ch = curl_init(); $timeout = 5; curl_setopt ($ch, CURLOPT_URL, $url); curl_setopt ($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt ($ch, CURLOPT_CONNECTTIMEOUT, $timeout); $file_contents = curl_exec($ch); curl_close($ch); $json = json_decode($file_contents); print_r($json); ?>
post请求在浏览器结果如下:
将浏览器编码修改为Unicode编码:
如此,便得到了图灵机器人返回的json解析结果。
两种方式最终可以通过$json->text的方法取得json解析的data数据。