Saya mempunyai masalah dengan satu layanan dan c#, layanan ini ditulis dalam laravel dan dikonsumsi oleh c#, masalahnya adalah respon laravel tidak dibaca oleh c#.
Saya mencoba layanan dengan tukang pos, dan berfungsi dengan benar.
Saat mencoba dengan c#, laravel kembali sebagai respons: array kosong saat menggunakan json atau string kosong saat menggunakan string nilai dari permintaan yang sama diteruskan.
kode c#:
string token = GetAuthToken();
var request = WebRequest.Create("url") as HttpWebRequest;
request.Method = "POST";
request.Accept = "application/json";
request.Headers.Add("Authorization", "Bearer " + token);
using (var streamWriter = new StreamWriter(request.GetRequestStream()))
{
streamWriter.Write(activities);
}
try
{
var response = request.GetResponse() as HttpWebResponse;
if (response.StatusCode == HttpStatusCode.OK)
{
(var streamReader = new StreamReader(response.GetResponseStream(),Encoding.UTF8))
{
//return a empty array or empty string
var result = streamReader.ReadToEnd();
}
}
}
catch(Exception e)
{
throw e;
}
Kode Laravel:
public function SetActivities(Request $request)
{
//return value: HULE
$re = $request[0]['Name'];
return $re;
}
Tukang pos menunjukkan nilai yang dikembalikan sebagai: HULE tetapi di c# nilainya es: ""
Saat mengubah kode di laravel untuk ini:
public function SetActivities(Request $request)
{
$re = 'a';
return $re;
}
Tukang pos : a
C#: a
Mengapa yang kedua berfungsi dengan benar?