curl服务器文件,curl 向远程服务器传输file文件

public function upload(){

//获取上传文件信息,文件名称以自己实际上传文件名称为准

$fileinfo = $_FILE['filename'];

//请求参数,依据商户自己的参数为准

$requestParam['version'] = '';

$requestParam['cmd_id'] = '';

$requestParam['mer_cust_id'] = '';

$requestParam['attach_file'] = new \CURLFile($fileinfo['tmp_name'],$fileinfo['type'],$fileinfo['name']);

//发起请求

$param = [

'requestData' => [

'cmd_id' => $requestParam['cmd_id'],

'mer_cust_id' => $requestParam['mer_cust_id'],

'version' => $requestParam['version'],

'attach_file' => $requestParam['attach_file'],

],

'headers' => ['Content-type' => 'multipart/form-data;charset=UTF-8']

];

$is_upload = ;

$requestRes = $this->request($param,$is_upload);

return $requestRes ;

}

private function request($param, $is_upload=) {

// 请求接口所以参数初始化

$data = [

'url' => $this->apiUrl, // 接口 url

'requestData' => $is_upload ? $param['requestData'] : http_build_query($param['requestData']), // 请求接口参数

'headers' => $param['headers']

];

//print_r($data); //debug 打印接口传输数据

$res = $this->httpPostRequest($data['url'], $data['headers'], $data['requestData']);

if (empty($res) || $res['info']['http_code'] != '') {

$this->json_ret('','http request error',[$res['error']]);

}

return [

'status' => $res['info']['http_code'],

'body' => $res['body']

];

}

//curl post 请求

private function httpPostRequest($url = '', $header = array(), $requestData = array()) {

$curl = curl_init();

curl_setopt($curl, CURLOPT_HTTPHEADER, $header);

curl_setopt($curl, CURLOPT_URL, $url);

curl_setopt($curl, CURLOPT_RETURNTRANSFER, true);

curl_setopt($curl, CURLOPT_POST, true);

curl_setopt($curl, CURLOPT_POSTFIELDS, $requestData);

$res = curl_exec($curl);

$info = curl_getinfo($curl);

$error = curl_error($curl);

curl_close($curl);

return [

'body' => $res,

'info' => $info,

'error' => $error,

];

}

php curl向远程服务器上传文件

模拟php curl向远程服务器上传文件

test.php <?php header('content-type:text/html;charset=utf8'); $file = dirname(__FILE__).'/1.jpg'; ...

xshell终端向远程服务器上传文件方法

centos-7下在本地终端里向远程服务器上传文件,在命令行中执行的软件. 安装命令如下: 在终端里输入如下命令: 会弹出如下窗口 选择你要上传的文件即可上传成功.

&lbrack; SHELL编程 &rsqb; 远程服务器传输文件

在shell编程中经常需要获取远程服务器文件.手工操作中使用scp命令完成.为避免脚本执行scp输入密码进行交互,需先建立本机服务器当前用户和远程服务器指定用户的信任关系.具体代码见操作实例,重点关注 ...

PHP 利用CURL&lpar;HTTP&rpar;实现服务器上传文件至另一服务器

// 上传端 /** * 向目标地址推送xls文件 * @Date 2019/4/29 */ public function putXls() { // 目标接口 $url = "http: ...

Python&colon; 如何判断远程服务器上Excel文件是否被人打开

最近工作中需要去判断远程服务器上的某个Excel文件是否被打开,如果被人打开,则等待,如果没人打开使用,则去填写数据进Excel文件. 开始想的很简单,和其他语言一样,比如C#,打开文件,如果报错说明 ...

C&num; 远程传输File文件

/// /// 向论坛传图片文件 /// /// &lt ...

HttpClient使用之下载远程服务器中的文件&lpar;注意目录遍历漏洞&rpar;

参考文献: http://bbs.csdn.net/topics/390952011 http://blog.csdn.net/ljj_9/article/details/53306468 1.下载地 ...

winform 查看远程服务器上的文件

解决方案: 1. 在目标服务器上发布webservice,实现文件下载的方法. using System; using System.Collections.Generic; using System ...

随机推荐

Microsoft IoT Starter Kit 开发初体验

1. 引子 今年6月底,在上海举办的中国国际物联网大会上,微软中国面向中国物联网社区推出了Microsoft IoT Starter Kit ,并且免费开放1000套的申请.申请地址为:http:// ...

php排序测试

对 http://www.cnblogs.com/kudosharry/articles/2521621.html 这个补充的调用系统sort()函数的测试结果 1000个随机数: 直接插入排序:时间 ...

在Android里完美实现基站和WIFI定位

来自:http://www.cnblogs.com/coffeegg/archive/2011/10/01/2197129.html 众所周知的,在OPhone和大部分国产的Android定制机里不支 ...

leetcode&mdash&semi;Same Tree

1.题目描述 Given two binary trees, write a function to check if they are equal or not.   Two binary tree ...

poj2255

题目大意: 树恢复??树复原?? 小Valentine非常喜欢玩二叉树的游戏,他非常喜欢在二叉树的树根上随机的写上一下大写字母,这是她创造的一个例子: D / \ / \ B E / \ \ / \ ...

convert用法(数据库中原本储存的格式是Nvarchar,如何修改成datetime格式)

查询这张表得到的数据如图 select CONVERT(nvarchar,substring([purchase-date],1,4)) +'-'+CONVERT(nvarchar,substring ...

FZU 1062 洗牌问题

首先有一个规律:当一个数字归位的时候,所有数字都会归位. 因此只需要模拟一个数字就可以了. #include #include #includ ...

Elasticsearch java api 基本搜索部分详解

文档是结合几个博客整理出来的,内容大部分为转载内容.在使用过程中,对一些疑问点进行了整理与解析. Elasticsearch java api 基本搜索部分详解 ElasticSearch 常用的查询 ...

PHP核心技术

一.PHP核心技术 1.写出一个能创建多级目录的PHP函数(新浪网技术部) <?php /** * 创建多级目录 * @param $path string 要创建的目录 * @param $m ...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值