httpclient base64 文件上传_php 图片上传

cc34b2fdb2520dd71cbdae05c2fcc723.png

/*

* base64图片上传

* @param string $base64_img 图片数据流

* @return string|bool

*/

public function base64img($base64_img)

{

$up_dir = dirname(__DIR__).'/web/uplodes/image/';

if(preg_match('/^(data:s*image/(w+);base64,)/', $base64_img, $result)){

$type = $result[2];

//判断图片类型

if(in_array($type,array('pjpeg','jpeg','jpg','gif','bmp','png')))

{

$new_file = $up_dir.date('YmdHis').'.'.$type;

$returnurl = Yii::$app->params['IMGURL'].'/uplodes/image/'.date('YmdHis').'.'.$type;

if(file_put_contents($new_file, base64_decode(str_replace($result[1], '', $base64_img))))

{

return ['message'=>'上传成功','data'=>$returnurl,'code'=>200];

}else{

return ['message'=>'上传失败','data'=>[],'code'=>400];

}

}else{

//文件类型错误

return ['message'=>'类型错误','data'=>[],'code'=>400];

}

}else{

//文件错误

return ['message'=>'文件错误','data'=>[],'code'=>400];

}

}

/**

* @api {post} uplode/uploadimg 图片路径

* @apiDescription 图片路径

* @apiParam {String} image 图片文件

* @apiGroup Uplodes

* @apiPermission ???

* @apiVersion 1.1.0

* @apiSuccessExample {json} Success-Response:

{

"code": "200

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
在 WPF 中使用 HttpClient 上传文件的步骤如下: 1. 引入必要的命名空间: ```csharp using System; using System.IO; using System.Net.Http; ``` 2. 创建一个 HttpClient 对象: ```csharp var httpClient = new HttpClient(); ``` 3. 创建一个 MultipartFormDataContent 对象,并添加文件内容: ```csharp var content = new MultipartFormDataContent(); var fileContent = new StreamContent(File.OpenRead(filePath)); content.Add(fileContent, "file", Path.GetFileName(filePath)); ``` 这里的 `filePath` 是要上传的文件路径。 4. 发起 POST 请求并上传文件: ```csharp var response = await httpClient.PostAsync(apiUrl, content); ``` 这里的 `apiUrl` 是上传文件的 API 地址。 5. 处理响应结果: ```csharp if (response.IsSuccessStatusCode) { // 文件上传成功 // 处理成功的逻辑 } else { // 文件上传失败 // 处理失败的逻辑 } ``` 完整的代码示例: ```csharp using System; using System.IO; using System.Net.Http; public async void UploadFile(string filePath, string apiUrl) { try { using (var httpClient = new HttpClient()) { using (var content = new MultipartFormDataContent()) { var fileContent = new StreamContent(File.OpenRead(filePath)); content.Add(fileContent, "file", Path.GetFileName(filePath)); var response = await httpClient.PostAsync(apiUrl, content); if (response.IsSuccessStatusCode) { // 文件上传成功 // 处理成功的逻辑 } else { // 文件上传失败 // 处理失败的逻辑 } } } } catch (Exception ex) { // 异常处理 } } ``` 请注意,这里的上传文件是使用 HTTP POST 请求方式进行的,你需要根据你的实际需求来调整代码。另外,还可以根据 API 的要求设置其他的请求头或请求参数。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值