asp.net如何发起post请求?

问题描述

以前用asp的时候,程序是这么写的:<%dimXmlHttpsetXmlHttp=Server.createobject("Microsoft.XMLHTTP")XmlHttp.open"POST","http://www.s2m.cc/rest/ip/getAddress/?token=03b92716-d6f9-490f-86c1-c4c017832083&ip=202.101.172.46",falseXmlHttp.send"token=03b92716-d6f9-490f-86c1-c4c017832083&ip=202.101.172.46"response.writebytesToBSTR(XmlHttp.responseBody,"utf-8")FunctionBytesToBstr(Body,Cset)DimObjstreamSetObjstream=Server.CreateObject("adodb.stream")objstream.Type=1objstream.Mode=3objstream.Openobjstream.Writebodyobjstream.Position=0objstream.Type=2objstream.Charset=CsetBytesToBstr=objstream.ReadTextobjstream.Closesetobjstream=nothingEndFunction%>

这个写法如果换成asp.net应该怎么写呢?

解决方案

解决方案二:
<formaction="post">或者$.post
解决方案三:
publicstaticstringPost(stringUrl,stringData){stringresult="";WebClientmyClient=newWebClient();myClient.Headers.Add("U-ApiKey","XOO");myClient.Encoding=System.Text.Encoding.UTF8;try{result=myClient.UploadString(Url,Data);}catch(Exceptionex){result=ex.Message;}returnresult;}

发送post并且获取返回值
解决方案四:
DimdataAsByte()data=System.Text.Encoding.UTF8.GetBytes("token=03b92716-d6f9-490f-86c1-c4c017832083&ip=202.101.172.46“)DimmyReqAsSystem.Net.HttpWebRequest=System.Net.WebRequest.Create(”http://www.s2m.cc/rest/ip/getAddress/“)myReq.Method="POST"myReq.ContentType="application/x-www-form-urlencoded;charset=UTF-8"myReq.ContentLength=data.LengthDimmyStreamAsSystem.IO.Stream=myReq.GetRequestStreammyStream.Write(data,0,data.Length)myStream.Close()DimmyResponseAsSystem.Net.HttpWebResponse=myReq.GetResponsemyStream=myResponse.GetResponseStreamDimmyStreamReaderAsNewSystem.IO.StreamReader(myStream)Response.Write(myStreamReader.ReadToEnd)myStreamReader.Close()myStreamReader=NothingmyStream.Close()myStream=NothingmyReq=Nothing

解决方案五:

解决方案六:
///<summary>///【POST】获取网站的html///</summary>///<paramname="URL">url地址</param>///<paramname="strPostdata">发送的数据,格式:id=1&amp;idd=2&amp;type=3</param>///<paramname="Enco">编码格式,例如utf-8【默认】,gb2312</param>///<returns></returns>publicstaticstringPostWebHtml(stringURL,stringstrPostdata,stringEnco="UTF-8"){strPostdata=strPostdata.FCoding(1).Replace("%3d","=").Replace("%26","&").Replace("%3f","?").Replace("%3a",":").Replace("%2f","/");Encodingencoding=Encoding.Default;HttpWebRequestrequest=(HttpWebRequest)WebRequest.Create(URL);request.Method="post";request.Accept="text/html,application/xhtml+xml,*/*";request.ContentType="application/x-www-form-urlencoded";byte[]buffer=encoding.GetBytes(strPostdata);request.ContentLength=buffer.Length;request.GetRequestStream().Write(buffer,0,buffer.Length);HttpWebResponseresponse=(HttpWebResponse)request.GetResponse();using(StreamReaderreader=newStreamReader(response.GetResponseStream(),System.Text.Encoding.GetEncoding(Enco))){returnreader.ReadToEnd();}}

解决方案七:
strPostdata=strPostdata.FCoding(1).Replace("%3d","=").Replace("%26","&").Replace("%3f","?").Replace("%3a",":").Replace("%2f","/");这块可以去掉。我是为了防止中文乱码才加上的
解决方案八:
后台代码用HttpRequestjs代码用jquery$.ajax({type:post})
解决方案九:
WebClient.UploadStringhttps://technet.microsoft.com/zh-CN/library/ms144236
解决方案十:
前台使用ajax,后台httprequest

时间: 2025-01-26 15:32:50

asp.net如何发起post请求?的相关文章

nodejs实现HTTPS发起POST请求

  nodejs实现HTTPS发起POST请求: 准备用nodejs搞一个快速注册163邮箱的东西,需要在某一步的时候post数据到https,node的官方文档实在太简陋了,网上找了个差不多的例子,拿来改了改用. ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 var util = require('util'), https = require('https');  

网易popo发起文件请求要怎么操作

  一:登陆popo,然后随便点击一个对话窗口(当然这里你最好打开你想要传送文件的那个好友对话窗口),然后找到"文件"选项并点击它,当你选择好文件后就可以点"发送"这个功能即可. 二:你还可以用自己的鼠标直接拖动那个你想传送的文件拉到聊天窗口中,这也是网易popo发起文件请求的一个好方法.         注:更多精彩教程请关注三联电脑教程栏目

asp.net web api get请求能在主体中包含自定义对象吗

问题描述 asp.net web api get请求能在主体中包含自定义对象吗 大家好,我的问题是我现在想提供一个判断服务接口,就是客户端传给我一个人的id 和此人的照片(20K左右),我这边接收然后判断并返回结果{result:1}或者{result:0}, 本人刚接触asp.net web api,没有经验,我想用Get方法来解决这个问题,我开始把 参数都放在URI中,接收的照片数据长度不足,于是我想把参数组成一个自定义对象放 在请求消息主体里面,请问怎么才能实现呢,非常感谢你的耐心,谢谢帮

cordova 发起的请求,用于登录,当密码中存在特殊字符时,URL会被截断,.net端接收不全

问题描述 cordova 发起的请求,用于登录,当密码中存在特殊字符时,URL会被截断,.net端接收不全 $.ajax({ type: "get", url: "http://192.168.0.1:80/AppService.asmx/Login", data: "{UserID: '123',Password:'123456*#' }", dataType: "json", success: function(data)

asp.net 中 通过ajax请求一般处理程序,可是请求头中的cookie

问题描述 asp.net 中 通过ajax请求一般处理程序,可是请求头中的cookie asp.net 中 通过ajax请求一般处理程序,可是请求头中的cookie只有一条 ,请问大侠们,cookie有限制吗?我并没有跨域请求啊 解决方案 asp.net Ajax Post 请求 一般处理程序 解决方案二: cookie 里边存储的是两个键值对,可是请求头中只携带了一个键值对.不知道为什么 解决方案三: cookie 里边存储的是两个键值对,可是请求头中只携带了一个键值对.不知道为什么 解决方案

java代码发起http请求,什么工具可以监听到连接参数

问题描述 比如,在eclipse中,代码发起http请求成功,请问有没有好的监听工具能够监听到?类似如httpwatch那样,可以看到参数,url等... 问题补充:redstarofsleep 写道 解决方案 wireshark

nodejs实现HTTPS发起POST请求_node.js

准备用nodejs搞一个快速注册163邮箱的东西,需要在某一步的时候post数据到https,node的官方文档实在太简陋了,网上找了个差不多的例子,拿来改了改用. var util = require('util'), https = require('https'); var regUrl = "https://ssl.mail.163.com/regall/unireg/call.do;jsessionid=%s?cmd=register.start&adapter=%s&

asp.net+ajax的Post请求实例_实用技巧

本文实例讲述了asp.net+ajax的Post请求的实现方法.分享给大家供大家参考.具体如下: 复制代码 代码如下: //一个ajax的Post请求       function submitInfo() {          $(".warn").hide(); //刚提交的时候隐藏错误的信息          var data = $("#formData").serialize(); //将表单的数据通过序列化表单值,创建 URL 编码文本字符串.形成一个表

PHP 利用curl_init发起http请求模仿登录

备注:使用curl_init函数,必须要打开这个php扩展. 1.打开php.ini,开启extension=php_curl.dll 2.检查php.ini的extension_dir值是哪个目录,检查有无php_curl.dll,没有的请下载php_curl.dll,再把php目录中的libeay32.dll,ssleay32.dll拷到c:/windows/system32里面. 发起http请求  代码如下 复制代码 function _http_curl_post($url,$data