首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 移动开发 > Windows Mobile >

应用RestSharp post

2013-01-11 
使用RestSharp post我想使用restsharp库提供的类来post一个txt文件到skydrive,可是不知道restsharp怎么用。

使用RestSharp post
我想使用restsharp库提供的类来post一个txt文件到skydrive,可是不知道restsharp怎么用。。网上的示例又看得不是很明白,试了一天了纠结了一天了,希望哪位大侠能指点一二。。。微软官方给的用REST put和post到skydrive的说明:

PUT https://apis.live.net/v5.0/me/skydrive/files/HelloWorld.txt?access_token=ACCESS_TOKEN

Hello, World!

POST https://apis.live.net/v5.0/me/skydrive/files?access_token=ACCESS_TOKEN

Content-Type: multipart/form-data; boundary=A300x

--A300x
Content-Disposition: form-data; name="file"; filename="HelloWorld.txt"
Content-Type: application/octet-stream

Hello, World!
--A300x--

我写的代码是这样的:
//test1
            string str = string.Format("https://apis.live.net/v5.0/me/skydrive/files/test.txt?access_token={0}", client.Session.AccessToken);
            RestRequest request = new RestRequest(str, Method.PUT);
            //request.AddBody("ok");//添加这行代码后运行会提示bad request

            //test2
            //string str = string.Format("https://apis.live.net/v5.0/me/skydrive/files?access_token={0}", client.Session.AccessToken);
            //RestRequest request = new RestRequest(str, Method.POST);
            //request.AddParameter("Content-Type", "multipart/form-data;boundary=A300x");//从这开始就不知道怎么写了,试着添加其他参数都不行。。


            RestClient restClient = new RestClient();
            //.........


[解决办法]
不知道怎么能帮到你

post的话要把
Content-Type: multipart/form-data; boundary=A300x

--A300x
Content-Disposition: form-data; name="file"; filename="HelloWorld.txt"
Content-Type: application/octet-stream

通过header传过去
[解决办法]
写的问题不大,哟奥加 http header的,你加的/request.AddParameter("Content-Type", "multipart/form-data;boundary=A300x");没问题,一般还要处理文件长度,建议看下RFC文档。
[解决办法]
引用:
我想使用restsharp库提供的类来post一个txt文件到skydrive,可是不知道restsharp怎么用。。网上的示例又看得不是很明白,试了一天了纠结了一天了,希望哪位大侠能指点一二。。。微软官方给的用REST put和post到skydrive的说明:C# code?1234567891011121314PUT https://apis.live.net/v5……


楼主解决了吗? 其实content_type不用我们自己添加的,如果是文件的话,它会自动添加的

热点排行