2017-01-23 92 views
1

我一直在嘗試發送下面的CURL命令,並嘗試了幾個例子,但沒有一個工作,因爲我需要發送用戶名:密碼並且不確定這是否是HEADER以及如何發送GET請求的BODY。只是尋找一個例子,發送用戶:密碼,因爲找不到任何地方? - 「data」:「1.1」,「method」:「room_verify」,「params」:{「account」:{「type」:「room」,「value」:「0」 }}} --user測試:測試http://ressrv.worldweb.com:8001/json_pos_generic/22嘗試發送使用VB.Net和HttpWebRequest的CURL命令 - 錯誤403禁止

這是我這個代碼:

 Dim url As String = "http://ressrv.worldweb.com:8001/json_pos_generic/22" 
    Dim wrq = CType(Net.WebRequest.Create(url), HttpWebRequest) 
     Dim postString As String = "{""version"":""1.1"",""method"":""room_verify"",""params"":{""account"":{""type"":""room"",""value"":""0""}}}" 

     wrq.Method = "POST" 
     wrq.ContentType = "application/json" 
     wrq.ContentLength = postString.Length 
     wrq.Credentials = New NetworkCredential("test", "test") 


    Dim wrqWriter As New StreamWriter(wrq.GetRequestStream()) 
    wrqWriter.Write(postString) 
    wrqWriter.Close() 

    Dim responseReader As New StreamReader(wrq.GetResponse().GetResponseStream()) 
     Dim responseData As String = responseReader.ReadToEnd() 

任何幫助或指導將不勝感激......

+0

對不起,我打算說POST請求以上 – Rob4236

回答

0

OK,我找到了答案後, 2天試圖得到這種排序,雖然我使用了一點點不同的代碼,但我認爲這一切都歸功於沒有將我的憑據轉換爲Base64我現在要研究爲什麼這是必需的。我發現這篇文章的答案來自另一篇文章Curl request equivalent in VB.NET

  Dim myReq As HttpWebRequest 
     Dim myResp As HttpWebResponse 

     myReq = HttpWebRequest.Create("http://ressrv.worldweb.com:8001/json_pos_generic/22") 

     myReq.Method = "POST" 
     myReq.ContentType = "application/json" 
     myReq.Headers.Add("Authorization", "Basic " & Convert.ToBase64String(Encoding.UTF8.GetBytes("test:test"))) 
     Dim myData As String = "{""version"":""1.1"",""method"":""room_verify"",""params"":{""account"":{""type"":""room"",""value"":""0""}}}" 
     myReq.GetRequestStream.Write(System.Text.Encoding.UTF8.GetBytes(myData), 0, System.Text.Encoding.UTF8.GetBytes(myData).Count) 
     myResp = myReq.GetResponse 
     Dim myreader As New System.IO.StreamReader(myResp.GetResponseStream) 
     Dim myText As String 
     myText = myreader.ReadToEnd 

     MsgBox(myText) 

謝謝反正!