/**
* PHP发送Json对象数据
* @param $url 请求url
* @param $jsonStr 发送的json字符串
* @return array
*/
public function http_post_json($url, $jsonStr)
{
$ch = curl_init();
curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_URL, $url);
curl_setopt($ch, CURLOPT_POSTFIELDS, $jsonStr);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
curl_setopt($ch, CURLOPT_HTTPHEADER, array(
'Content-Type: application/json; charset=utf-8',
'Content-Length: ' . strlen($jsonStr)
)
);
$response = curl_exec($ch);
$httpCode = curl_getinfo($ch, CURLINFO_HTTP_CODE);
curl_close($ch);
return array($httpCode, $response);
}

 /**
* 模拟post进行url请求
* @param string $url
* @param string $param
*/
public function request_post($fullUrl = '', $post_data = array()) {

if (empty($fullUrl) || empty($post_data)) {
return false;
}

/* $o ="";
foreach ( $post_data as $k => $v )
{
$o.= "$k=" . urlencode( $v ). "&" ;
}
$post_data = substr($o,0,-1);*/
$postUrl = $this->address.$fullUrl;
$curlPost = jsonEncode($post_data);
$ch = curl_init();//初始化curl
curl_setopt($ch, CURLOPT_URL,$postUrl);//抓取指定网页
curl_setopt($ch, CURLOPT_HEADER, $this->header);//设置header
curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);//要求结果为字符串且输出到屏幕上
curl_setopt($ch, CURLOPT_POST, 1);//post提交方式
curl_setopt($ch, CURLOPT_POSTFIELDS, $curlPost);
$data = curl_exec($ch);//运行curl
curl_close($ch);
print_R($data);
return $data;
}

模拟get提交
public function request_get($param){
$url=$this->address."/hnybdata/gettoken?".$param;
$curl = curl_init(); //初始化
curl_setopt($curl, CURLOPT_URL, $url); //设置抓取的url
// curl_setopt($curl, CURLOPT_HEADER, 1); //设置头文件的信息作为数据流输出
curl_setopt($curl, CURLOPT_RETURNTRANSFER, 1); //设置获取的信息以文件流的形式返回,而不是直接输出。
$data = curl_exec($curl); //执行命令
curl_close($curl); //关闭URL请求
return $data;
}

php curl 模拟post提交的更多相关文章

  1. CURL 模拟http提交

    1:CURL模拟get提交 private function httpGet($url) { $curl = curl_init(); curl_setopt($curl, CURLOPT_RETUR ...

  2. php中curl模拟post提交多维数组(转载)

    原文地址:http://www.cnblogs.com/mingaixin/archive/2012/11/09/2763265.html 今天需要用curl模拟post提交参数,请求同事提供的一个接 ...

  3. cURL模拟POST提交数据

    首先,是这个代码: <?php //curl模拟post提交数据$url = "http://127.0.0.1/immoc/output.php";$post_data = ...

  4. php CURL 模拟 POST 提交数据

    <?php function liansuo_post($url,$data){ // 模拟提交数据函数 $curl = curl_init(); // 启动一个CURL会话 curl_seto ...

  5. php通过CURL模拟post提交请求

    <?php header("Content-type:text/html;charset=utf-8"); class Test{ public function reque ...

  6. php通过CURL模拟get提交请求

    方式一: $host = "http://jisunews.market.alicloudapi.com"; $path = "/news/get"; $met ...

  7. php curl模拟post请求提交数据

    最近在做校园图书馆图书信息的采集程序,既然是图书馆图书的采集,肯定有提交搜索的页面,无非是post提交,让我想到了curl模拟提交,首先通过firebug进行抓包查询下post提交后的格式如下: tx ...

  8. php curl模拟post请求提交数据样例总结

    在php中要模拟post请求数据提交我们会使用到curl函数,以下我来给大家举几个curl模拟post请求提交数据样例有须要的朋友可參考參考.注意:curl函数在php中默认是不被支持的,假设须要使用 ...

  9. Java中使用多线程、curl及代理IP模拟post提交和get访问

    Java中使用多线程.curl及代理IP模拟post提交和get访问 菜鸟,多线程好玩就写着玩,大神可以路过指教,小弟在这受教,谢谢! 更多分享请关注微信公众号:lvxing1788 ~~~~~~ 分 ...

  10. Linux curl 模拟form表单提交信息和文件

    Linux curl 模拟form表单提交信息和文件   curl是一个命令行方式下传输数据的开源传输工具,支持多种协议:FTP.HTTP.HTTPS.IMAP.POP3.TELNET等,功能超级强大 ...

随机推荐

  1. 字符串类型如何格式化保留小数点后两位【ToString("0.00")】

    废话都不想写了,直接上图 遇到将decimal字段或者double字段转换成字符串string类型字段时想直接保留小数点后面两位的时候可以有个比较简易的格式化写法 也就是 str.ToString(& ...

  2. EMQX 在 Kubernetes 中如何进行优雅升级

    背景 为了降低 EMQX 在 Kubernetes 上的部署.运维成本,我们将一些日常运维能力进行总结.抽象并整合到代码中,以 EMQX Kubernetes Operator 的方式帮助用户实现 E ...

  3. Java基础__04.GUI编程

    GUI编程常见的组件: 窗口 弹窗 面板 文本框 列表框 按钮 图片 监听事件 鼠标操作 键盘事件 GUI简介 GUI的核心技术:Swing AWT,是需要jre环境的. AWT介绍 包含了很多类和接 ...

  4. 把本地项目上传到github

    一在本地项目文件内,git初始化,并add, commit cd /test/xxxdemo git init add . commit -m "inits" 二在github创建 ...

  5. Sup, inf convolution for convex functions

    Let $\Omega$ be a bounded convex domain in $\mathbb{R}^n$. $f:\Omega\rightarrow\mathbb{R}^n$. If $f$ ...

  6. k8s_namespace

    namespace 可以认为namespaces是kubernetes集群中的虚拟化集群.在Kubernetes集群可以拥有多个命名空间,它们在逻辑上彼此隔离. 多数的Kubernetes中的集群默认 ...

  7. Markdown 基础语法 备忘录

    在vscode中使用Markdown先要安装一些插件: Markdown Preview Enhanced Paste Image LimfxCodeEX Code Spell Checker 一级标 ...

  8. 关于watch

    watch和computed是姊妹篇,前言同上. 为啥姊妹呢,因为computed初始化完了就是初始化watch: function initWatch (vm, watch) { for (var ...

  9. python pip的使用

    1.导出安装包 pip freeze > requirements.txt 2.安装requirements.txt文件中指定的扩展库:pip install -r requirement.tx ...

  10. Grafana + Prometheus + Mysqld_exporter 监控 Mysql

    最近研究了对于Mysql的监控,感觉Prometheus还是挺强大的,有各种适配的度量导出工具,Mysqld_exporter也是旗下的一款工具,可以在Prometheus官网下载. 因为本机电脑用的 ...