簡體   English   中英

如何使用cUrl從ASP.NET MVC3網站上載文件?

[英]How to upload files using cUrl from an ASP.NET MVC3 website?

我需要將文件上傳到RackSpace的Cloud Files。

在他們的API頁面上,他們有一個使用cUrl編寫的示例,有人知道如何在C#中實現該示例嗎?

由於我的搜索無濟於事,所以我對北區非常感激,我什至在這里發現的所有代碼看起來都像是常規上傳的代碼。

這是我需要在C#中工作的示例:

Upload File to Container
curl -X PUT -T screenies/hello.jpg -D - \
-H "ETag: 805120e285a7ed28f74024422fe3594" \
-H "Content-Type: image/jpeg" \
-H "X-Auth-Token: fc81aaa6-98a1-9ab0-94ba-aba9a89aa9ae" \
-H "X-Object-Meta-Screenie: Hello World" \

https://storage.clouddrive.com/v1/CF_xer7_343/
images/hello.jpg

HTTP/1.1 201 Created
Date: Thu, 09 July 2009 17:03:36 GMT
Server: Apache
Content-Length: 0
ETag: 805120e285a7ed28f74024422fe3594
Content-Type: text/plain

明確地說,我不希望任何人為我做我的工作,我只需要一些教程或我所說的北方。

謝謝。

您可以使用HttpWebRequest將PUT請求發送到服務,也可以使用更新的HttpClient api

請參閱下面的示例。

var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-Auth_User", "your_username");
client.DefaultRequestHeaders.Add("X-Auth-Key", "your_api_key");

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));

var bytes = File.ReadAllBytes(imagePath);
var ms = new MemoryStream(bytes);

 client.DefaultRequestHeaders.Accept.Add(new System.Net.Http.Headers.MediaTypeWithQualityHeaderValue("image/pjpeg"));
 var content = new StreamContent(ms);


 var response = client.PutAsync("YOUR_RACKSPACE_URI", content);

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM