curl 请求接口数据

CURL 操作

    • 初始化
    • 指定的接口地址 url 就是 $postUrl
    • 需要用户和密码鉴权,需要头部传递信息
    • 对认证证书来源的检查 和 从证书中检查SSL加密算法是否存在
    • 模拟用户使用的浏览器
    • 设置端口
    • 表示需要response body
    • 要求结果为字符串且输出到屏幕上
    • post提交方式
    • 添加头,在name和pass处填写对应账号密码(需要用户鉴权,否则不要添加)
    • 传递数据,这里的$dataJson是json格式
    • 运行curl,获得结果 $data

初始化

$ch = curl_init();

指定的接口地址 url 就是 $postUrl

curl_setopt($ch,  CURLOPT_URL, $postUrl);

需要用户和密码鉴权,需要头部传递信息

curl_setopt($ch, CURLOPT_HEADER, true);

对认证证书来源的检查 和 从证书中检查SSL加密算法是否存在

(一般用于接口是https://的,否则不需要添加)

curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 

curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, false); 

模拟用户使用的浏览器

curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']); 

设置端口

curl_setopt($ch, CURLOPT_PORT, 8443);

表示需要response body

curl_setopt($ch, CURLOPT_NOBODY, FALSE);

要求结果为字符串且输出到屏幕上

curl_setopt($ch, CURLOPT_RETURNTRANSFER, TRUE);

post提交方式

curl_setopt($ch, CURLOPT_POST, TRUE);

添加头,在name和pass处填写对应账号密码(需要用户鉴权,否则不要添加)

$Header[] = "Content-Type:application/json";

$Header[] = "Authorization: Basic ".base64_encode("username:password"); 

curl_setopt($ch, CURLOPT_HTTPHEADER, $Header);

传递数据,这里的$dataJson是json格式

curl_setopt($ch, CURLOPT_POSTFIELDS, $dataJson);

运行curl,获得结果 $data

$data = curl_exec( $ch );

curl_close($ch);

你可能感兴趣的:(PHP,接口)