c#调用百度短网址api

问题描述

byte[]postData=Encoding.UTF8.GetBytes("url=http://bbs.csdn.net/topics/new?forum_id=ASPDotNET");//byte[]postData=Encoding.UTF8.GetBytes("longurl=http://bbs.csdn.net/topics/new?forum_id=ASPDotNET");varurl="http://dwz.cn/create.php";varclient=newWebClient();client.Headers.Add("Content-Type","application/x-www-form-urlencoded");client.UploadData(url,"POST",postData);byte[]responseData=client.UploadData(url,"POST",postData);varr=Encoding.UTF8.GetString(responseData);

最后的r=‘{"status":-1,"err_msg":"网址不能为空","longurl":""}’

解决方案

解决方案二:
虽然没用过百度的api但如果是标准rest格式的话,可以用HttpClient来访问varhttpClient=newHttpClient();stringurl;vardic=newDictionary<string,string>();HttpContenthttpContent=newFormUrlEncodedContent(dic);vartask=httpClient.PostAsync(url,httpContent);varresponseContent=task.Result.Content

解决方案三:
client.UploadData(url,"POST",postData);这行去掉
解决方案四:
把http去了试试。。。如下我这边测试可以了post地址:http://dwz.cn/create.php

加上请求头:Host:dwz.cnAccept:*/*Accept-Language:zh-cn,zh;q=0.8,en-us;q=0.5,en;q=0.3Accept-Encoding:gzip,deflateContent-Type:application/x-www-form-urlencoded;charset=UTF-8X-Requested-With:XMLHttpRequestPragma:no-cacheCache-Control:no-cacheReferer:http://dwz.cn/

解决方案五:
为啥请求之后的长连接只带了一个参数,原本有5个参数
解决方案六:
引用4楼kobeair的回复:

为啥请求之后的长连接只带了一个参数,原本有5个参数

将Url编码以后再传过去就可以了
解决方案七:

解决方案八:
vardata="url=http://bbs.csdn.net/topics/new?forum_id=ASPDotNET";varurl="http://dwz.cn/create.php";varclient=newSystem.Net.WebClient();client.Headers.Add("Content-Type","application/x-www-form-urlencoded");varrs=client.UploadString(url,"POST",data);Console.WriteLine(rs);

测试可用...另外官方既然提供了方法我就建议下不要来回的byte[]转换..费劲.
解决方案九:
另外UploadString(Url,Data);即可中间的POST不需要也行
解决方案十:
data地址,url里面如果有两个以上参数,生成的短url只有第一个参数。求解
解决方案十一:
url=http://bbs.csdn.net/topics/new?forum_id=ASPDotNET&bbb=test生成短url时bbb会消失
解决方案十二:
对啊当URL多参数时就会截断生成短网址求教??如何解决这个问题
解决方案十三:
编码一下吧Uri.EscapeUriString
解决方案十四:
我来回答一下吧,这样处理就对了url="http://bbs.csdn.net/topics/new?"+Uri.EscapeDataString("forum_id=ASPDotNET&bbb=test");

解决方案十五:
直接用ajax调用,多方便啊,不用后台代码就可以了。
解决方案:
没用过这个东西,但是代码里面好像有点问题,不知道对不对。client.UploadData(url,"POST",postData);byte[]responseData=client.UploadData(url,"POST",postData);这两句是不是重复了

时间: 2024-10-06 11:02:21

c#调用百度短网址api的相关文章

调用百度短地址API接口为什么会截断长地址中&amp;amp;amp;后面的参数?

问题描述 请教高手!急byte[]postData=Encoding.UTF8.GetBytes("url=http://www.szgs1.org.cn/Web/EWM/MFE.aspx?mainid=16&sortid=5&filedocid=5");varurl="http://dwz.cn/create.php";varclient=newWebClient();client.Headers.Add("Content-Type&qu

淘宝客推广利剑:百度短网址

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 百度的网址缩短服务(dwz)可谓是一波三折.Dwz.cn推出以后曾一度关闭相当长一段时间,后来不知又合适低调重新开启服务.短网址一直是淘宝客必备,今天笔者就和大家分享下如何将百度短网址服务作用发挥到极致,真正成为淘宝客推广利剑. 淘宝客推广链接由于过长而且容易被屏蔽所以一直是淘宝客必备.然而百度短网址和其他类似的短网址服务相比,有以下几个得天

php调用新浪微博短链接api接口地址例子

新浪短网址接口的稳定性和跳转速度还是很给力的,现给出其API说明. 该接口支持两种返回格式:xml和json 对应的URL请求地址为:  代码如下 复制代码 xml:http://api.t.sina.com.cn/short_url/shorten.xml json:http://api.t.sina.com.cn/short_url/shorten.json 使用说明 请求方式:GET 请求参数: source:应用的appkey url_long:需要转换的长链接 举个例子:  代码如下

c#读取txt文件,添加的控件是webBrowser,就是调用百度地图的api,把标注的经纬度信息

问题描述 读写了下来保存在txt,该如何再把取下来的标注,在读取到webbrowser地图页面里面显示之前的标注x:118.89178,y:32.10269,mark:dasdasdx:118.890729,y:32.102805,mark:管口1x:118.892508,y:32.103302,mark:管口2x:118.891115,y:32.102843,mark:管口1x:118.891178,y:32.102384,mark:x:118.891807,y:32.10217,mark:x

html 调用百度地图的api在上画图 之后怎么保存到数据库

问题描述 如题如图 解决方案 解决方案二:坐标呗!经度纬度半径解决方案三:首先,你的js程序是否是有逻辑的?你画图之前,有没有"数据"依据?其次,你是否知道如何从js中访问业务服务器?是否知道如何开发服务器端系统?这些条件都具备了,再在这个层次上提出更为具体的技术问题.

PHP实现百度、网易、新浪短网址服务的API接口调用

1 谷歌.百度.网易.新浪短网址服务的API比较 百度短网址API接口完全对外开放,用户不需申请其开放平台的APPKEY,也不用采用OAuth的协议,因此相对简单方便:谷歌的短网址API接口有两种形式,一种类似于百度无需进行繁复的OAuth认证,不过限制比多:另一种是采用GAE平台OAuth2.0的认证方式,限制较少.新浪微博的短网址API接口服务也类似于谷歌,第一种只需要取得新浪微博开放平台的APPKEY即可使用,第二种是采用OAuth2.0认证的方式.网易只提供类似于新浪微博提供的第二种AP

PHP实现短网址开源API,不需DB

  配置文件 <?php /*网址设置*/ define(SITE,"http://xxx.com");//域名后面不要加/ /*API设置*/ define(API_KEY,"");//API,申请地址:http://qita.in/reg.php /*高级设置*/ define(OPEN_AD,"0");//跳转页广告开关,1表示开,0表示关. define(AD,"我是广告");//广告内容,双引号里内容必须只能包

JQuery与Ajax调用新浪API获取短网址的代码

 这篇文章主要介绍了调用新浪API获取短网址的方法有很多,本例为大家介绍下使用JQuery与Ajax来实现,需要的朋友可以参考下  代码如下: <!doctype html>  <html>  <head>  <meta charset="utf-8">  <title>获取新浪短网址</title>  <script src="http://ajax.aspnetcdn.com/ajax/jQue

jsonp-ajax 调用新浪API动态获取短网址

问题描述 ajax 调用新浪API动态获取短网址 function getShortUrl(urlStr){ $.ajax({ async:false, url : 'http://api.weibo.com/2/short_url/shorten.json?source=5786724301&url_long='+urlStr, type : 'GET', dataType : 'JSONP', jsonp: 'jsoncallback', cache: false, success : fu