Ich habe ein Problem mit der Anfrage mit Parametern zu senden. Ich habe Beispiel für die Anforderung in PHP zu senden, aber ich kann nicht herausfinden, wie sollte es wie in RestSharp aussehen:RestSharp - GET Anfrage mit Parametern
Wie Sie sehen können, in dem Beispiel Parameter werden zu privaten Schlüsseln (was ich auch getan habe) und dann gibt es auch dieses CURLOPT_POSTFIELDS, wo auch Params hinzugefügt werden. Ich habe versucht, es durch AddParameter, AddBody, AddJsonBody und nichts funktioniert. Wenn ich Parameter mit einem privaten Schlüssel verkettet habe, ist die Antwort immer leer. Wenn ich sie entferne, erhalte ich die Antwort, aber meine Parameter werden ignoriert.
string data = "{\"Paging\":{\"per_page\":\"" + 10 + "\"}}";
RestClient client = new RestClient("api");
string header = "WMS " + publicKey + ":" + GetMd5Hash(privateKey + data);
IRestRequest request = new RestRequest("products", Method.GET);
request.AddHeader("Content-Type", "application/json; charset=utf-8");
request.AddHeader("Authorization", header);
request.AddHeader("Content-Length", data.Length.ToString());
//request.RequestFormat = RestSharp.DataFormat.Json;
request.AddParameter("Paging", new { per_page = 10 });
IRestResponse response = client.Execute(request);
Encoding encoding = Encoding.GetEncoding("utf-8");
var result = encoding.GetString(response.RawBytes);
konnte ich die PHP-Anfrage mit Fiedler und roh Anfrage so aussah verfolgen:
GET api HTTP/1.1 Host: api Pragma: no-cache Accept: */* Authorization: WMS md5 Content-type: application/json Content-Length: 27 {"Paging":{"per_page":"8"}}
Und Mine sieht so aus:
GET api HTTP/1.1 Authorization: WMS md5 Content-Type: application/json Accept: */* User-Agent: RestSharp/105.2.3.0 Host: api Accept-Encoding: gzip, deflate Connection: Keep-Alive
Der Parameter wird nicht angezeigt darin, weiß nicht warum. Ich habe jeden Parametertyp ausprobiert. Abgesehen davon ist auch meine Kopfzeile "Content-Length" nicht sichtbar.
Verwenden Sie [Fiddler] (https://www.telerik.com/fiddler), um die echte Anfrage von php senden zu protokollieren. –
Fiddler registriert diese Anfrage nicht:/ – Dess
Ich habe es geschafft, es zu verfolgen, also habe ich meine Frage aktualisiert – Dess