php curl请求接口并获取数据
当我们在做php开发的时候,很多时候需要对接口进行测试,或者更方便的调用一些已有模块的接口,取到结果并进行后续操作,我们可以通过curl进行模拟提交post和get请求,来去实现这些功能。
下面是对curl的post和get的封装
- <?php
- /**
- * Created by PhpStorm.
- * User: thinkpad
- * Date: 2015/7/17 0017
- * Time: 13:24
- */
- class Action
- {
- public static function curl_get($url){
- $testurl = $url;
- $ch = curl_init();
- curl_setopt($ch, CURLOPT_URL, $testurl);
- //参数为1表示传输数据,为0表示直接输出显示。
- curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
- //参数为0表示不带头文件,为1表示带头文件
- curl_setopt($ch, CURLOPT_HEADER,0);
- $output = curl_exec($ch);
- curl_close($ch);
- return $output;
- }
- /*
- * url:访问路径
- * array:要传递的数组
- * */
- public static function curl_post($url,$array){
- $curl = curl_init();
- //设置提交的url
- curl_setopt($curl, CURLOPT_URL, $url);
- //设置头文件的信息作为数据流输出
- curl_setopt($curl, CURLOPT_HEADER, 0);
- //设置获取的信息以文件流的形式返回,而不是直接输出。
- curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1);
- //设置post方式提交
- curl_setopt($curl, CURLOPT_POST, 1);
- //设置post数据
- $post_data = $array;
- curl_setopt($curl, CURLOPT_POSTFIELDS, $post_data);
- //执行命令
- $data = curl_exec($curl);
- //关闭URL请求
- curl_close($curl);
- //获得数据并返回
- return $data;
- }
- }
之后就可以通过CURL::curl_post($url,$array)或者CURL::curl_get($url);的方式调用接口并得到数据了。
php curl请求接口并获取数据的更多相关文章
- vue 配合vue-resource调用接口,获取数据
1.先用node+express+mysql简单配置一下后台 const express = require('express');const mysql = require('mysql');con ...
- 微信小程序:wx.request之post请求后端无法获取数据的问题
前言:小程序的开发中总是踩到各种坑,看文档也不知所云: 例如当我们在写微信小程序接口时,method请求方式有POST和GET两种,为了数据安全,我们会偏向于使用POST请求方式访问服务器端: 问题: ...
- PHP中使用CURL模拟登录并获取数据实例
cURL 是一个功能强大的PHP库,使用PHP的cURL库可以简单和有效地抓取网页并采集内容,设置cookie完成模拟登录网页,curl提供了丰富的函数,开发者可以从PHP手册中获取更多关于cURL信 ...
- 基于NIO的同步非阻塞编程完整案例,客户端发送请求,服务端获取数据并返回给客户端数据,客户端获取返回数据
这块还是挺复杂的,挺难理解,但是多练几遍,多看看研究研究其实也就那样,就是一个Selector轮询的过程,这里想要双向通信,客户端和服务端都需要一个Selector,并一直轮询, 直接贴代码: Ser ...
- 谷歌翻译使用php curl请求接口文档
支持语言 阿拉伯语代码 ar 英语代码 en 中文(简体)代码 zh-CN php中curl类常用方法封装和详解 REST API Method translate POST /language/tr ...
- PHP 之 CURL 模拟登陆并获取数据
1.CURL模拟登陆的流程和步骤 2.tempnam 创建一个临时文件 3.使用CURL模拟登陆到PHP100论坛 <?php $cookie_file = tempnam('./temp',' ...
- 【转】PHP 之 CURL 模拟登陆并获取数据
1.CURL模拟登陆的流程和步骤2.tempnam 创建一个临时文件3.使用CURL模拟登陆到PHP100论坛 <?php$cookie_file = tempnam('./temp','coo ...
- CURL请求接口
private function http_curl($url,$data=null){ //1.初始化,创建一个新cURL资源 $ch = curl_init(); ...
- curl请求接口返回false,错误码60
我讲一下我遇到的这个问题,是因为最近服务器加了https导致的,网上找到了答案,加上这句 curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, false); 就可以正常返 ...
随机推荐
- 单例模式-java
/** * The MIT License * Copyright (c) 2014-2016 Ilkka Seppälä * <p> * Permission is hereby gra ...
- JS 回车提交,兼容IE、火狐、Opera、Chrome、Safari……
1.JavaScript 方法: <script> document.onkeydown=function(event){ e = event ? event ...
- Java中用FileInputStream和FileOutputStream读写txt文件,文件内容乱码的问题,另附循环代码小错误
乱码问题大概就是编码格式不一样,搜了很多都是这么说的,修改编码解决乱码问题链接: https://blog.csdn.net/weixin_42496466/article/details/81189 ...
- redis 启动配置文件加载报错 service redis does not support chkconfig
# chkconfig: # description:Redis is a persistent key-value database 网上资料 上面的注释的意思是,redis服务必须在运行级2,3, ...
- 如何衡量一个人的 JavaScript 水平?
参考链接:https://blog.csdn.net/weixin_37615279/article/details/103658866
- python爬虫的入门问题
第一张图是代码,爬的是亚马逊的一个商品网页,能爬出来内容,但是内容之间有很多空白换行,这是什么原因?要怎么解决?
- fiddler手机抓包1
1.手机抓包配置教程:https://www.jianshu.com/p/724097741bdf 2.
- ORA-12514错误分析
ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 的解决方法 ORA-12514 TNS 监听程序当前无法识别连接描述符中请求服务 有同事遇到这个问题,现总结一下,原因如下: ...
- vector简单常用用法
Vector是什么? vector翻译为向量,从某种角度来说就是一个可以变长的数组,它会根据需要自动扩充数组的容量,除此之外其是一个STL中的模板类,其 还具有一些内部的方法. Vector的使用方法 ...
- 版本管理——Git和SVN的介绍及其优缺点
版本管理 概念:版本管理是软件配置管理的基础,它管理并保护开发者的软件资源. 好处:可以保留我们的历史版本,在代码开发到一半的时候,不至于无故丢失,还可以查看BUG的来龙去脉. 版本管理种类: ...