VB如何实现发送POST请求?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了VB如何实现发送POST请求?相关的知识,希望对你有一定的参考价值。

VB如何实现发送连带GET和POST请求?亦即直接POST发送到包含GET参数的URL里。关键还是讨论如何用VB发送POST参数。

参考技术A 参考一下吧

Private Function ShowIe(ByVal url As String, ByVal user As String, ByVal sn As String)
On Error GoTo ex
'edtPostData.Text = "" ' Initialize an edit box for testing
ReDim aByte(0) As Byte ' Array of bytes to hold data to post
' Extract the URL encoded data from the UI,
' and pack it into an array of bytes
' cFlavor = cboFlavor.List(cboFlavor.ListIndex)
cParamName = "user="
cParamFlavor = "SN="
cSeparator = "&"
cPostData = cParamName & user _
& cSeparator & cParamFlavor & sn
PackBytes aByte(), cPostData
' For testing, rebuild the POST data and stuff
' it into an edit box
For i = LBound(aByte) To UBound(aByte)
edtPostData = edtPostData + Chr(aByte(i))
Next
Dim vPost As Variant
vPost = aByte ' Assign the byte array to a VARIANT
Dim vFlags As Variant
Dim vTarget As Variant
Dim vHeaders As Variant
vHeaders = _
"Content-Type: application/x-www-form-urlencoded" _
+ Chr(10) + Chr(13)
Dim objExplorer As Object
Set objExplorer = CreateObject("InternetExplorer.Application")

objExplorer.Navigate url, _
vFlags, vTarget, vPost, vHeaders objExplorer.Visible = True
Exit Function
ex:
End Function
参考技术B 需要截取 post包 分析出他的真实网络地址和发送的参数包 来用vb post定义 参考技术C 可以使用部件:Microsoft Internet Transfer Control

如何使用 _csrf 在 angularjs 中发送 POST 请求?

【中文标题】如何使用 _csrf 在 angularjs 中发送 POST 请求?【英文标题】:How send POST request in angularjs with _csrf? 【发布时间】:2016-01-06 09:23:52 【问题描述】:

我想在 Spring Security 下发送 POST 请求到服务。 如果我使用表单提交(带有隐藏输入) - 它工作正常。 但我不知道,如何使用 $http.post 发送请求。 我的表格:

<form method="POST" type="submit" action="http://localhost:8888/rest/post1" />
    <button>345</button>
    <input name="$_csrf.parameterName"
           value="$_csrf.token" />
</form>

它工作。

我保存参数:

<script>
        var a = "$_csrf.parameterName";
        var b = "$_csrf.token";
</script>

我的 ng-click 功能:

$http.post('http://localhost:8888/rest/post1', "_csrf": b, 
    "headers" :
     "_csrf" : b 
).success(function(data) 
    console.log("ok");

).error(function()

    console.log("no");
);

它总是写“不”。

我认为,需要将变量作为 webForm 发送,但是如何在 $http.post 中发送?

提琴手写:Content-Type is 'application/json'; this inspector supports 'x-www-form-urlencoded' only

服务器控制台:

org.springframework.web.servlet.PageNotFound handleHttpRequestMethodNotSupported
WARNING: Request method 'POST' not supported

请帮帮我!

【问题讨论】:

这可能会有所帮助:[***.com/questions/18156452/… 不,不要帮忙,谢谢 【参考方案1】:

您可能需要在请求标头中设置“_csrf”。您将它作为方法的参数传递。这行不通。我不太了解 angular.js,但您必须将其作为请求标头或请求有效负载传递。我找到了一些参考。就是这样:

$httpProvider.defaults.xsrfCookieName = 'csrftoken';
$httpProvider.defaults.xsrfHeaderName = 'X-CSRFToken';

希望这可以帮助您解决问题。干杯!!!

【讨论】:

【参考方案2】:

我解决了这个)

var request = $http(
    method: "post",
    url: "http://localhost:8888/rest/post1",
    headers: 'Content-Type': 'application/x-www-form-urlencoded',
    transformRequest: function()return a+"="+b;,
    data: 
);

【讨论】:

以上是关于VB如何实现发送POST请求?的主要内容,如果未能解决你的问题,请参考以下文章

如何在 React 中发送带有变量的 POST 请求?

curl实现发送Get和Post请求(PHP)

CURL实现发送Get和Post请求(PHP)

nodejs实现百度实时推送

java如何实现两个客服端之间互相发送信息

用VB的Winsock来发送http请求头,请指教!