0
我有調用API的一些問題。我需要發送包含2件事情的發佈數據:一個ID和一個int數組。 我嘗試了很多東西,都導致錯誤或者根本沒有以正確的方式發送數據。我發現的所有答案都不處理我想發送2種不同數據類型的事實。C#:HttpClient POST傳遞參數 - 一個字符串和int數組
在另一邊我有:
Call<DefaultResponseList> someMethod(@Field("parm1") String parm1, @Field("parm2[]") ArrayList<Integer> parm2);
我想:
List<int> ints1 = new List<int>();
ids.Add(1);
ids.Add(2);
ids.Add(3);
var values = new List<KeyValuePair<string, object>>
{
new KeyValuePair<string, object>("parm1", "lkdjfowejfd123"),
new KeyValuePair<string, object>("parm2", ints1)
};
var httpClient = new HttpClient(new HttpClientHandler());
HttpResponseMessage response = await httpClient.PostAsync(someUrl, new FormUrlEncodedContent(values));
response.EnsureSuccessStatusCode();
string data = await response.Content.ReadAsStringAsync();
你應該知道'someUrl'的環境,然後根據這些信息來安排你的值。例如,如果目標環境是Apache/PHP服務器,則您的密鑰應該像param2 [],因爲傳統的ASP.NET環境值應該與occurence具有相同的密鑰名稱,並且如果其ASP.NET MVC密鑰應該包含諸如param2 [0 ],param2 [1]等。 –
目標環境是一個Apache/PHP服務器。 – Miljkoyu