Saya mencoba mendapatkan respons dari API. Tautan API berisi nomor ID subjek. misalnya http.../a12 Ini akan mengembalikan objek XML seperti yang terlihat di Tukang Pos.
<Response>
<code>200</code>
<status>OK</status>
<message>Completed</message>
<messageCode/>
<returnObj>
<field1>0.25000</field1>
<field2>0.01150</field2>
</returnObj>
</Response>
Namun, jika saya mengirim API yang ID-nya tidak ada di database, katakanlah, http.../g14, XML ini akan dikembalikan di Tukang Pos.
<Response>
<code>400</code>
<status>BAD_REQUEST</status>
<message>ID is invalid.</message>
<messageCode>RGN001</messageCode>
<returnObj/>
</Response>
Saya dapat mengambil objek XML pertama tanpa masalah, tetapi saya tidak dapat mengambil XML kedua yang berisi kesalahan. Klien ASP saya akan mengembalikan kesalahan 400, meskipun XML dikembalikan di Tukang Pos.
Kode saya untuk mengambil XML terlihat seperti ini
HttpWebRequest wrWebRequest = setAuthHeader(endpoint);
wrWebRequest.Method = "GET";
HttpWebResponse wrWebResponse = wrWebRequest.GetResponse() as HttpWebResponse; //it fails here.
Tentu saja, konsol mengembalikan kesalahan ini
System.Net.WebException: The remote server returned an error: (400) Bad Request.
Sebagai alternatif, saya juga mencoba metode lain
var client = new WebClient();
client.Headers[HttpRequestHeader.Authorization] = "Basic xxxxxxx";
var text = client.DownloadString(endpoint);
Tapi ini mengembalikan kesalahan yang sama.
Saya hanya ingin mengambil respons XML ke-2 setiap kali saya melakukan panggilan HTTP yang tidak valid yang responsnya dibuat khusus.
Terima kasih sebelumnya atas panduan dan bantuan apa pun.