PC1.PC http://www.bitscn.com/pdb/php/201411/402... 21Yii2 PCPHPApi 1url2file_get_contents()url3JSON4http://www.jb51.net/article/20705.htm //PHPURL $url='http://api.xx"/> PC1.PC http://www.bitscn.com/pdb/php/201411/402... 21Yii2 PCPHPApi 1url2file_get_contents()url3JSON4http://www.jb51.net/article/20705.htm //PHPURL $url='http://api.xx">

PC端调用接口笔记整理以及注意事项 怀孕晚期注意事项 坐飞机注意事项 流产后注意事

WBOY
Freigeben: 2016-07-29 08:54:17
Original
1252 Leute haben es durchsucht

data-id="1190000004902725">

序言

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

原因分析

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

笔记整理

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

PHP调用Api接口的方法

<code>    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反转</code>
Nach dem Login kopieren

Ajax调用Api接口的方法

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

JQ调用Api接口的方法

<code>例:
        <script type="text/javascript" src="/apihandonesvn/frontend/web/assets/68738eee/jquery-1.11.2.min.js"></script>
        <script type="text/javascript">
            //1&#12289;GET&#26041;&#24335;
            $.get('http://api.XXX.com/v1/departments?grade=1',function(data){ 
                    //  console.log(data);//&#36755;&#20986;&#20869;&#23481;&#65292;&#31867;&#20284;alert()
                     $('#content').html(data);
            });

            //2&#12289;POST&#26041;&#24335;
            $.post('http://api.XXX.com/v1/departments?grade=1',{a:1,b:2,c:3},function(data){ 
                     $('#content').html(JSON.stringify(data));
            });

        </script></code>
Nach dem Login kopieren

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

<code> 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());
    }</code>
Nach dem Login kopieren

以上三种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

以上就介绍了PC端调用接口笔记整理以及注意事项,包括了注意事项,接口方面的内容,希望对PHP教程有兴趣的朋友有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage