新浪微博api 调用-怎么调用新浪微博API开放接口发图片微博

问题描述

怎么调用新浪微博API开放接口发图片微博

我的代码如下,发文字的可以,发图片微博却不行,怎么总是返回400,求解答,他要求图片需要传入binary类型
string url = "https://upload.api.weibo.com/2/statuses/upload.json";
string usernamePassword = UserName + ":" + PassWord;
string t_news = string.Format("{0},{1}", NewsTitle, NewsContent);

        FileStream fs = new FileStream( "E:\gsl\QQ130.png", FileMode.Open, System.IO.FileAccess.Read, FileShare.ReadWrite);
        int streamLength = (int)fs.Length;
        byte[] image = new byte[streamLength];
        fs.Read(image, 0, streamLength);
        fs.Close();

        string data = "source=" + AppKey + "&status=" + System.Web.HttpUtility.UrlEncode(t_news) + "&pic=" + System.Text.Encoding.Default.GetString(image);

        System.Net.WebRequest webRequest = System.Net.WebRequest.Create(url);
        System.Net.HttpWebRequest httpRequest = webRequest as System.Net.HttpWebRequest;
        System.Net.CredentialCache myCache = new System.Net.CredentialCache();
        myCache.Add(new Uri(url), "Basic", new System.Net.NetworkCredential(UserName, PassWord));
        httpRequest.Credentials = myCache;
        httpRequest.Headers.Add("Authorization", "Basic " + Convert.ToBase64String(new System.Text.ASCIIEncoding().GetBytes(usernamePassword)));
        httpRequest.Method = "POST";
        httpRequest.ContentType = "multipart/form-data";
        System.Text.Encoding encoding = System.Text.Encoding.ASCII;
        byte[] bytesToPost = encoding.GetBytes(data);
        httpRequest.ContentLength = bytesToPost.Length;
        System.IO.Stream requestStream = httpRequest.GetRequestStream();
        requestStream.Write(bytesToPost, 0, bytesToPost.Length);
        requestStream.Close();

        System.Net.WebResponse wr = httpRequest.GetResponse();
        System.IO.Stream receiveStream = wr.GetResponseStream();
        using (System.IO.StreamReader reader = new System.IO.StreamReader(receiveStream, System.Text.Encoding.UTF8))
        {
            string responseContent = reader.ReadToEnd();
        }
时间: 2024-11-02 21:01:27

新浪微博api 调用-怎么调用新浪微博API开放接口发图片微博的相关文章

新浪微博发图片微博的时候如何进行多图上传?

  发图片微博的时候假如想要进行多图上传,您只需要在发布框点击图片,在上传图片中选择多图上传,点开之后会出现上传图片的页面,您可以上传您要发布的微博图片,同时您还可以根据自己的爱好对图片进行编辑处理.

新浪微博的账号登录及PHP api操作

  新浪微博 的账号登录及api操作,使用oauth 2.0     官方提供的sdk都太过庞大,这是我自己简化的,提供简单的账号登录.获取个人信息.发布微博等功能,如果需要其他功能可以根据官方的api文档自行添加    [文件] sina.php 001 <?php 002 /** 003  * PHP Library for weibo.com 004  * 005  * @author PiscDong (http://www.piscdong.com/) 006  */ 007 clas

C#调用Google Earth Com API开发(三)

好久没有更新<C#调用Google Earth Com API开发>系列文章了,今天带给大家的是第三篇,本篇相 对于第二篇主要改进了三个方面. 1) 实现GoogleEarth显示画面随窗口大小改变而改变 2) 截获GoogleEarth鼠标消息,实现单击.双击功能:鼠标滚轮缩放现在只能放大!O(∩_∩)O~ 3) 实现GoogleEarth彩色截图(测试环境:Windows 2003 Server ,Vista与Win7中不可用,XP未测) 下面还是继续看代码: 1.GoogleEarth动

vba win32 api-vba 中调用win 32 的api接口

问题描述 vba 中调用win 32 的api接口 ※ 下面问题本人也在网上找了很久的答案,可是均不行,希望各位看官能帮帮忙.谢谢. 其中 i 找了win32的返回值为字符串的win32 api的VBA接口调用 => 测试成功,方法这里就不说了 i 找了win32通过参数返回字符串的win32 api的VBA接口调用 =>测试成功,方法这里就不说了 i 找了通过参数返回字符串数组的自定义C的api的VBA接口调用 =>没测试 例如: C的test.dll接口: void test(cha

winform-在C# Winform项目 利用WIN32 API 无法再次调用第三方的应用系统

问题描述 在C# Winform项目 利用WIN32 API 无法再次调用第三方的应用系统 在C# Winform项目,from窗体中有一个Panel控件和一个Button控件. 目前已经能够利用WIN32 API 找到"监控系统"窗口的句柄,并将那个获取到的窗口"附加"到了Panel控件上. 并能够正常在Panel控件中显示"监控系统". 请问下,怎么样实现form窗体关闭后,再次再点击Button控件能够再次获取到"监控系统&quo

ios-使用微信支付的时候,一定要商户服务器先调用【统一下单API】生成预付单吗?

问题描述 使用微信支付的时候,一定要商户服务器先调用[统一下单API]生成预付单吗? 看了微信的demo和文档,它们的demo里的调用支付方法 都没有商品的名称 描述 价格这些信息, 我们公司android那边说不需要先调下单api,他们都直接调用支付宝支付, 不知道该怎么实现 + (NSString *)jumpToBizPay { //============================================================ // V3&V4支付流程实现 //

ArcGIS API for Silverlight 调用WebService出现跨域访问报错的解决方法

原文:ArcGIS API for Silverlight 调用WebService出现跨域访问报错的解决方法       群里好几个朋友都提到过这样的问题,说他们在Silverlight中调用了WebService方法,总报这个错误,贴图如下: 解决办法:      1.确定你的Silverlight项目及承载Silverlight的Web程序根目录下都包含2个跨域文件,分别是crossdomain.xml和clientaccesspolicy.xml:  crossdomain.xml文件,

ArcGIS API for Silverlight 调用GP服务准备---GP模型建立、发布、测试

原文:ArcGIS API for Silverlight 调用GP服务准备---GP模型建立.发布.测试                                                                                                                      第一篇.GP降雨量等值线建模.发布及测试          在水利.气象等行业中,要在WebGIS中实现空间分析功能,如绘制等值线.等高线.等直面.缓冲区等都

arcgis ser...-arcgis api for javascript调用arcgis server服务

问题描述 arcgis api for javascript调用arcgis server服务 本地部署3.9版本.有时候例子页面的地图也不出来.调用也没实现.谁弄给看看.qq1279134579 解决方案 今天尝试在Linux环境下安装ArcGIS Server10.2,启动服务碰到一个错误:ERROR: Unable to start Xvfb on any port in the range 6600 - 6619.具体环境:Linux:Redhat 6.4 64BitArcGIS Ser