Я хочу вставить данные из моей формы на мой сервер, используя HTTP Web POST. У меня есть код ниже, я не могу получить значение Jbject json и отправить его в мой PHP-код.
var caf = entCafNo.Text;
string url = "http://192.168.120.9:7777/TBS/Host=" + Constants.hostname + "&Database=" + Constants.database + "&Request=SendCaf";
string contentType = "application/json";
JObject json = new JObject
{
{ "CAF", caf }
};
HttpClient client = new HttpClient();
var response = await client.PostAsync(url, new StringContent(json.ToString(), Encoding.UTF8, contentType));
PHP-код:
$request = $_GET["Request"];
if($request == "SendCaf"){
$caf = $_POST["CAF"];
$sql = "INSERT INTO tblCaf(CAFNo)
VALUES('$caf)";
mysqli_query ($conn, $sql);
}
Вы помещаете все данные в свой URL. Я думаю, что это ПОЛУЧИТЬ, а не ПОЧТА.
Я не использовал GetRequestStream
так что у меня нет ответа. Если вас интересует другой способ выполнения POST, используйте PostAsync
, То, как я делаю это в моем текущем проекте Xamarin, выглядит примерно так
using Newtonsoft.Json;
using System.Net.Http;
//more code here
string url = "http://localhost/helloword/";
string contentType = "application/json";
JObject json = new JObject
{
{ "key1", value1},
{ "key2", value2 }
};
HttpClient client = new HttpClient();
var response = await client.PostAsync(url, new StringContent(json.ToString(), Encoding.UTF8, contentType));
// this is data received from server. May or may not need this.
var data = await response.Content.ReadAsStringAsync();
Ссылка: Как передать объект в HttpClient.PostAsync и сериализовать как тело JSON?
Других решений пока нет …