2016-08-05 13 views
0

Ich schreibe Azure Queue Auslöser Funktion App, die Daten aus einer Nachrichtenwarteschlange und lädt sie auf einen Speicher, der REST-Service bietet, mit PUT-Anfrage. Zu Testzwecken stelle ich Testdaten im Feld "Anfragetext" auf der Azure-Benutzeroberfläche bereit, anstatt Daten aus der Warteschlange zu übernehmen. Ich verwende PutAsJsonAsync, um REST zu konsumieren. Das Problem ist, dass ich einen Bad Request error bekomme. Ich validierte JSON-Struktur mit Validierungs-Tool und es ist gültig. Und ich habe die gleichen Daten auch erfolgreich mit Postman hochgeladen. Ich vermute es ist vielleicht das Problem in meinem Code. Hier ist mein Code:bekomme 'Schlechte Anfrage' von PutAsJsonAsync

using System; 
using System.Collections.Generic; 
using System.Net.Http; 
using System.Net.Http.Headers; 

public static void Run(string myQueueItem, TraceWriter log) 
{ 
    string URL = "<url>"; 
    HttpClient client = new HttpClient(); 
    client.BaseAddress = new Uri(URL); 

    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json")); 
    client.DefaultRequestHeaders.Add("token","<token value>"); 

    HttpResponseMessage response = client.PutAsJsonAsync("xxx/xx/xxx",myQueueItem).Result; 

    if (response.IsSuccessStatusCode) 
    { 
     string responseString = response.Content.ReadAsStringAsync().Result; 
     log.Info($"This is result: {responseString}"); 
    } 
    else 
    { 
     log.Info($"Response Status Code: {response.Headers} | Reason : {response.ReasonPhrase}"); 
    } 


} 
+0

Wie sieht Ihr myQueueItem aussieht? – Forlani

+0

Nur eine JSON-Struktur – user30646

+0

Versuchen Sie Folgendes: client.PutAsJsonAsync ("xxx/xx/xxx", neuer StringContent (myQueueItem, UnicodeEncoding.UTF8, "application/json")). Ergebnis; – Forlani

Antwort

1

Versuchen Sie es mit client.PutAsync() statt client.PutAsJsonAsync()

Ich würde es so nennen:

client.PutAsync("xxx/xx/xxx",new StringContent(myQueueItem, UnicodeEncoding.UTF8, "application/json")).Result 
Verwandte Themen