0

次の非常に単純な Post メソッドを再構築しようとしました:

https://XYZ.com/v01/example.html

Winforms クライアントでは、次のように完璧に動作します。

WC = New Net.WebClient
Dim reqparm As New Specialized.NameValueCollection
reqparm.Add("DomainName", "XYZarco.com")
reqparm.Add("PIN", "1111")
Dim responsebytes() As Byte = WC.UploadValues(uri, "POST", reqparm) 'works
Dim responsebody As String = (New Text.UTF8Encoding).GetString(responsebytes) 'works

ただし、ライブラリが UploadValues をサポートしていないため、Windows Phone 7.1 では機能しません。調査の結果、次のことがわかりました。

Dim U As String = "https://XYZ.com/v01/api.asp"
        Dim uri As New Uri(U, UriKind.Absolute)

        If WC Is Nothing Then
            WC = New WebClient
            'WC.Headers("HttpRequestHeader.ContentType") = "    text/html"
            WC.Headers("HttpRequestHeader.ContentType") = "application/x-www-form-urlencoded"
            WC.Encoding = System.Text.Encoding.UTF8
        End If
        Dim Params As String = "DomainName=xyz.com&PIN=1111"
        WC.Headers("HttpRequestHeader.ContentLength") = Params.Length.ToString
        WC.UploadStringAsync(uri, "POST", Params)

しかし、データは掲載されていません。応答手段: 。ERROR 01、ドメイン名が正しくありません。Domain.com などのゴールド Web サイトを挿入してください

誰かが私を助けることができますか?

4

1 に答える 1

1
WC.Headers("HttpRequestHeader.ContentType")

HttpRequestHeader は列挙型です。引用符なしで使用します。

WC.Headers(HttpRequestHeader.ContentType)
于 2013-07-30T16:15:11.390 に答える