请求测试接口,如下:

$data = ['mobilephone'=>'','password'=>''];
$result = curlrequest($apiUrl,$data);
if($result['statusCode'] == ){
echo json_encode($result);
}else{
echo json_encode($result);
}

curl请求url方法,如下:

/**
* @param string $url 请求地址
* @param string $data 请求数据
* @param string $method 请求方式
* @return array 一维数组
*/
function curlrequest($url,$data = '',$method = 'POST'){
$ch = curl_init(); //初始化CURL句柄
curl_setopt($ch, CURLOPT_URL, $url); //设置请求的URL
curl_setopt($ch, CURLOPT_RETURNTRANSFER,); //设为TRUE把curl_exec()结果转化为字串,而s不是直接输出
curl_setopt($ch, CURLOPT_CUSTOMREQUEST, $method); //设置请求方式 curl_setopt($ch,CURLOPT_HTTPHEADER,array("X-HTTP-Method-Override: $method"));//设置HTTP头信息
curl_setopt($ch, CURLOPT_POSTFIELDS, $data);//设置提交的字符串 如果提交的数组为多维数组 需要用http_build_query函数把数组重新生成URL-encode 之后的请求字符串
$document = curl_exec($ch);//执行预定义的CURL
$statusCode = curl_getinfo($ch,CURLINFO_HTTP_CODE); //获取HTTP请求状态码~
curl_close($ch); $document = json_decode(removeBOM($document),true);
$document['statusCode'] = $statusCode;
return $document;
}

如果返回的json结果中出现乱码,那么需要去除BOM,如下:

/**
* @param string $str 字符串
* @return string 去除BOM以后的字符串
*/
function removeBOM($str = '')
{
if (substr($str, ,) == pack("CCC",0xef,0xbb,0xbf)) {
$str = substr($str, );
}
return $str;
}

以上就是这次的全部内容!

php(curl请求)测试接口案例的更多相关文章

  1. php之接口内curl请求其他接口

    今天遇到一个需要写curl的需求,情况是这样的: 同一应用的A系统(购物系统),B系统(答题系统)相互独立,用户数据全部存在于A系统的数据库中, 现在处于B系统的某项操作中,需要在B系统中验证当前请求 ...

  2. PHP Curl请求Https接口

    在请求http的时候只需要 file_get_contents("http://www.sojson.com/open/api/weather/json.shtml?city=$Positi ...

  3. php curl 请求api 接口

    官方文档curl : http://www.runoob.com/php/php-ref-curl.html php开启curl :  ① 打开 php.ini 文件  extension=php_c ...

  4. postman工具测试接口

    本篇文章主要介绍怎么在postman工具中进行接口的测试? 从以下几个方面进行介绍: 1.先介绍下接口测试 2.不同类型的接口请求方式如何在postman中进行测试 1.1 接口 什么是接口? 接口一 ...

  5. 发送post请求的接口

    一.简介 所有系统或者软件.网站都是从登录开始,所以首先介绍的第一个post请求是登录. 二.help函数 学习一个新的模块捷径,直接用help()函数查看相关注释和案例内容 for example: ...

  6. Linux curl携带cookie测试接口

    问题: 休息在家,被告知要启动测试环境的一个定时任务,但是服务器在内网,连上vpn只能访问内网的开发环境,无法访问测试环境,于是进开发环境服务器,ping测试环境的ip,发现是通的,于是想到通过开发环 ...

  7. php curl请求和获取接口数据

    curl请求和获取接口数据 class ToolModel{ /** * [http 调用接口函数] * @Author GeorgeHao * @param string $url [接口地址] * ...

  8. 在线HTTP POST/GET模拟请求api接口http请求测试工具https://post.jsonin.com/

    在线HTTP POST/GET模拟请求api接口http请求测试工具 在线POST/GET接口测试工具https://post.jsonin.com/ Json在线解析及格式化校验工具 https:/ ...

  9. [CXF REST标准实战系列] 二、Spring4.0 整合 CXF3.0,实现测试接口(转)

    转自:[CXF REST标准实战系列] 二.Spring4.0 整合 CXF3.0,实现测试接口 文章Points: 1.介绍RESTful架构风格 2.Spring配置CXF 3.三层初设计,实现W ...

随机推荐

  1. Anaconda的安装及使用

    总结的很清楚,做个记录. http://python.jobbole.com/86236/

  2. ArrayList增加扩容问题 源码分析

    public class ArrayList<E>{ private static final int DEFAULT_CAPACITY = 10;//默认的容量是10 private s ...

  3. mysql字符集小结

    http://blog.csdn.net/wyzxg/article/details/8779682 author:skatetime:2013/04/09 mysql字符集小结 今天同事阿杰兄发现内 ...

  4. 数据结构C语言顺序表

    #include <stdio.h> #include <stdlib.h> typedef int EmenType; typedef struct Node { int d ...

  5. 2019浙大校赛--G--Postman(简单思维题)

    一个思维水题 题目大意为,一个邮递员要投递N封信,一次从邮局来回只能投递K封.求最短的投递总距离.需注意,最后一次投递后无需返回邮局. 本题思路要点: 1.最后一次投递无需返回邮局,故最后一次投递所行 ...

  6. 《高质量C++&C 编程指南》学习笔记

    这本电子书是在国科大上课时候,老师在课件资源里边提供的.之所以会重视这个文件,是因为本科时候,有个老师提到过:那个学生遍的代码很整齐,看起来让人舒服,我就知道工大留不下他.因此,我就格外注意这件事,但 ...

  7. Self referencing loop detected for property 错误

    EF 序列化返回json时 报错:Self referencing loop detected for property 解决方案:在webapiconfig.cs文件中,增加设置: 1.config ...

  8. 解析分享链接在微信内转发防封API接口的实现原理

    域名被微信封了怎么办?相信这是很多做微信的朋友的疑惑,本人也是做防封的,特此写一篇文章,写给域名被微信封的.被秒封的朋友来看.简单个大家讲一下防封原理和实现方式. 域名拦截因素 我们先来了解一下域名为 ...

  9. Python小练习之寻找101到200之间的素数

    方法1:from math import * def primeNumber(start,end): num = 0 for i in range(start,end): flag = 0 for j ...

  10. 新特技软件(Analyzer)添加新用户

    新特技软件添加新用户的步骤比较多,记录下来,方便以后使用 安装完软件,处理好自己的AS以后,准备添加用户 步骤一: 我们要在安装Analyzer的服务器上添加新的Windows用户 步骤二:在Anal ...