2016-05-03 4 views
0

Est-il possible d'envoyer un HTTP POST avec Flurl ou Flurl.Http afin que je puisse y accéder côté serveur comme $_POST['foo']?

j'ai pu poster JSON avant comme

dynamic responses = await Serverpath.PostJsonAsync(
         new { foo = "foo", bar = "bar" }) 
         .ReceiveJsonList(); 

et il a reçu serveur dégrossi

$json = json_decode(file_get_contents("php://input"), true); 

Mais maintenant, je veux juste envoyer une petite chaîne et l'accès via la variable $ _POST, donc c'est possible si oui, comment?

Répondre

2

C'était plus facile que je ne le pensais.

je suis venu avec cette solution

dynamic response = await ServerAddress.PostUrlEncodedAsync(new { foo = "bar" }); 

Serverside: $_POST['foo']

+0

Vous me devança. :) Je ne suis pas un mec PHP mais deviner $ _POST est typiquement pour inspecter les données postées à partir de formulaires HTML, qui sont envoyés avec un encodage URL, donc vous êtes sur place. –

+0

@ToddMenier Parfois, je suis plus rapide en écriture qu'en utilisant mon cerveau :) Cependant, Flurl est à vous? J'imagine que j'ai reçu un bug dans 'ReceiveJsonList();' sur Android et WinPhone ça marche très bien Cependant sur iOS je reçois une exception 'Request to [...] failed 'même si le' Flurl.Http.HttpCall' me le donne. Mais si je remplace 'ReceiveJsonList()' par 'ReceiveString()' je reçois la réponse sur iOS (mais pas dans le format que je veux) une raison pour cela et un correctif disponible? –