PC端调用接口笔记整理以及注意事项

序言

好习惯造就好人生,开发中要善于总结。今天我继续给大家分享一些干货,关注我的粉丝们有福利了哈。下边是我在PC端调用接口整理出来的一些笔记,以及提醒大家需要注意的事项!

原因分析

1.首先我说一下为啥会在PC端调用接口获取数据吧!
给个链接给你们:http://www.bitscn.com/pdb/php/201411/402...。看完这篇文章之后估计你就明白我的用意了。
2、把相关的资料整合,不但利于信息的获取还能作为前车之鉴,前人栽树后人乘凉懂吧?哈哈,我是博爱党。

笔记整理

1、Yii2 PC端调用接口获取数据的三种方式

PHP调用Api接口的方法

    1、直接在方法里引用接口的url。2、通过file_get_contents()函数获取url的数据。3、把获取到的JSON格式数据进行反转。(可选)4、参考网址:http://www.jb51.net/article/20705.htm   //PHP远程调用URL例: $url='http://api.xxx.com/v1/departments?id=list&company_id=1';$data=file_get_contents($url);$data_1 = json_decode($data,true);     //JSON反转

Ajax调用Api接口的方法

    例:$.ajax({type:"POST",url: //你的请求程序页面随便啦(接口地址)async:false,//同步:意思是当有返回值以后才会进行后面的js程序。data://请求需要发送的处理数据success:function(msg){if (msg) {//根据返回值进行跳转window.location.href = '你的跳转的目标地址(页面地址)';}}

JQ调用Api接口的方法

例:

补充:使用后两种方法的话,在接口对应控制器的所有方法顶部加上下面代码

 public function behaviors(){return ArrayHelper::merge([['class' => Cors::className(),'cors' => ['Origin' => ['http://www.ceshi.com'],//PC端的Url'Access-Control-Request-Method' => ['GET','POST','PUT','DELETE', 'HEAD', 'OPTIONS'],],'actions' => ['index' => ['Access-Control-Allow-Credentials' => true,]]],],parent::behaviors());}

以上三种PC端调用接口的方式,本人亲测过都可行,你们各取所爱。

2、PC端调用接口,接口怎么获取uid的问题?
此时接口就不可用Yii自带的Yii:$app->user->id获取了,因为接口也不可能登录。接口要获取当前登录者的uid可以通过PC端传个access-token,然后在接口用get获取去查出uid,解决。
接口获取其它参数的时候也可同样仿造此方法。

3、报:PHP Warning – yii\base\ErrorException
Invalid argument supplied for foreach()错误的问题及解决方法
这个错误是循环空数据造成的,只要在数据循环前得加个判断,保证数据存在才能循环就解决了。这虽然不是什么特别难解决的错误,但是细节问题我们还得注意,细节决定成败。

提醒注意

1、PC端调用接口进行本地测试,本地接口地址最好别和网上一致,因为这样它会先走本地接口,要是遇到本地接口好的话,不好找原因。

相关资料

PHP(CURL)POST数据调用API简单示例:http://eyexiaobo.iteye.com/blog/1100712


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部