0
xamarin.formsのポストマルチパートフォームデータがついています。私がPOSTMANで試してみると、すべて正常に動作しますが、xamarin.formsのコードではうまく動作しません。私はコードに何が間違っているのか分かりません。私はRestSharp port as PCL and for .NET Coreを呼び出すライブラリを使用しています。ここでPOSTマルチパーツフォームデータでスタックされている - Xamarin.forms
はPOSTMANコード
var client = new RestClient("http://192.168.2.126:86/Appointment.svc/UploadFileios");
var request = new RestRequest(Method.POST);
request.AddHeader("postman-token", "11a61861-ed9c-2f35-751b-6b615907c269");
request.AddHeader("cache-control", "no-cache");
request.AddHeader("content-type", "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW");
request.AddParameter("multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW", "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"phone\"\r\n\r\n81234518\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"address\"\r\n\r\nAddress Dummy House\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"password\"\r\n\r\n123\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"confpassword\"\r\n\r\n123\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition: form-data; name=\"name\"\r\n\r\nAlex Chengalan Paily\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--", ParameterType.RequestBody);
IRestResponse response = client.Execute(request);
以下はxamarin.formsと私のコードです。
var client = new RestClient(url);
var request = new RestRequest(Method.POST);
string boundary = "---------------------------" + DateTime.Now.Ticks.ToString("x");
//string boundary = "----WebKitFormBoundary7MA4YWxkTrZu0gW";
request.AddHeader("cache-control", "no-cache");
request.AddHeader("content-type", "multipart/form-data; boundary=" + boundary);
string name = "multipart/form-data; boundary=" + boundary;
string formdataTemplate = "--" + boundary +
"\r\nContent-Disposition: form-data; name=\"{0}\"\r\n\r\n{1}\r\n";
string formitem = null;
foreach (string key in nvc.Keys)
{
formitem = formitem + string.Format(formdataTemplate, key, nvc[key]);
}
Debug.WriteLine("Items: " + formitem);
request.AddParameter(name, formitem, ParameterType.RequestBody);
IRestResponse response = await client.Execute(request);
ここではサーバーから解析エラーが発生しています。この状況で私を助けてください。
エラーは何ですか? –
これは、カスタムメッセージであるバックエンドからトリガされたパーズ例外です。 –
解析エラーメッセージを共有できますか?このリンクがあなたに役立つかもしれません[C#でのMultipart Form Post](https://briangrinstead.com/blog/multipart-form-post-in-c/) –