1

PDF ドキュメントを提供する Web API を作成しました。Javascript のみのクライアントである 4.5/4.0 クライアントを使用しています。現在、いくつかの古い Web サイト用に .NET 3.5 クライアントを作成しようとしています。いくつかのライブラリを NUGET できることは理解していますが、私の理解では... HttpClient は現在 4.0 でしか動作しませんか?

いずれにせよ、これを実現する手段として WebClient を使用したいと思います。現在私は持っています:

Dim js As New Script.Serialization.JavaScriptSerializer
Dim client As New Net.WebClient
client.Headers(Net.HttpRequestHeader.ContentType) = "application/x-www-form-urlencoded"
Dim serializedData As String = js.Serialize(Me.PDFReport)
Dim collection As New NameValueCollection
collection.Add("value", serializedData)
Dim response As Byte() = client.UploadValues("http://www.mywebsite.com/api/report/Post/", collection)

PDF を含む Byte 配列を返すことができるように、シリアル化されたデータを NameValueCollection に押し込んでいます。私はそれをWeb API側に表示させることができないようです:

Public Function Post(str As NameValueCollection) As Byte()
    Dim js As New JavaScriptSerializer
    Dim obj As PDFReport = js.Deserialize(Of PDFReport)(str("value"))
    Dim rpt As New ReportService(obj)
    'Return Nothing (Commented for now until I figure out how to get values)
End Function

私は何を間違っていますか?UploadString を使用しない限り、回線経由で値を取得できないようですが、適切な応答を取得できません。

4

1 に答える 1