ThinkPHP5.0环境下编写接口及其调用

认识什么是接口

简而言之,是一些预先编写好的函数,外部操作人员不需要理解具体其底层原理,只要把对应的参数传递进去得到正确的结果,这个过程就称为调用接口。它是实现软件与硬件之间数据交互的一个方式。

接口的请求流程

确定请求地址->判断是否为post请求(如果是post请求的话那么先需要一步组装参数,再发送请求,如果是get请求,那么就直接发送请求)->发送请求->处理返回数据->end

请求类型

有post、get(这两个从请求方式上来看)
从协议的不同上可以考虑则有
http请求可以分为http协议和https协议

请求方式

①浏览器直接访问
②ajax请求
③在php中可以使用file_get_contents来产生get请求
curl请求方式

对请求方式④进行案例实践(important)

如何封装curl请求

A:初始化连接 B:可能需要传递一些参数,进行配置参数(决定请求是否成功,是否有效) C:发送请求 D:关闭请求

<?php

namespace app\common\controller;



class Index
{
      //该方法:提供url地址,提供是否为post,提供要传入的data数组(建议先封装好),提供是否为https请求
      public function requestUrl($url,$post= true,$data=null,$https= false)
      {
            //1.初始化连接
            $ch = curl_init();//初始化一个会话
            //2.设置连接参数
            curl_setopt($ch,CURLOPT_RETURNTRANSFER,true);//初始化的curl会话 选项 值 这一个设置,请求结果不输出
            //这一步要判断是否是post请求,如果是post请求的话就要组装参数
            if($post)
            {
                  curl_setopt($ch,CURLOPT_POST,true);
                  curl_setopt($ch,CURLPOT_POSTFIELDS,$data);//要求data是一个数组
            }
            //判断是否是https请求
            if($https==true)
            {
                  curl_setopt($ch,CURLPOT_SSL_VERIFYPEER,false);
                  curl_setopt($ch,CURLOPT_SSL_VERIFYHOST,false);

            }
            //3.发送请求
            $result = curl_exec($ch);

            //4.关闭连接
            curl_close($ch);
            return $result;
      }
}

开始学习如何接入接口

下载SDK与配置

SDK:软件开发工具包,实际上就是提供的一个demo案例,已经封装好了一些类,只要组合修改等就可以使用了。

拿到数据之后进行数据的传递,请求的发送

首先直接将auth的文件进行复制到入口文件中

<?php
/**
 * 网站接入使用Auth认证接口进行授权
 * 授权流程先通过浏览器重定向到授权服务器取得授权码(code)后
 * 再从服务器使用接口调用获取到对应用户的访问令牌
 *
 */
/**
 * 包含SDK
 */
require("../classes/yb-globals.inc.php");
//配置文件
require_once 'config.php';

//初始化
$api = YBOpenApi::getInstance()->init($config['AppID'], $config['AppSecret'], $config['CallBack']);
$au  = $api->getAuthorize();
//获取接口返回信息
//网站接入获取access_token,未授权则跳转至授权页面
$info = $au->getToken();
if(!$info['status'])
{//授权失败
      echo $info['msg'];
      die;
}

?>

编写回调方法

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值