c# อาร์เรย์ว่างเป็นการตอบกลับจาก laravel

ฉันมีปัญหากับหนึ่งบริการและ c# บริการเขียนด้วย laravel และใช้โดย c# ปัญหาคือการตอบสนองของ laravel ไม่ถูกอ่านโดย c#

ฉันลองใช้บริการกับบุรุษไปรษณีย์และทำงานได้อย่างถูกต้อง

เมื่อลองด้วย c# laravel จะส่งกลับเป็นการตอบกลับ: อาร์เรย์ว่างเมื่อใช้ json หรือสตริงว่างเมื่อใช้สตริงค่าจากคำขอเดียวกันที่ส่งผ่าน

รหัส 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;

        }

รหัสลาร์ราเวล:

     public function SetActivities(Request $request)
{
    //return value: HULE
    $re = $request[0]['Name'];
    return $re;

}

บุรุษไปรษณีย์แสดงค่าที่ส่งคืนเป็น: HULE แต่ใน c# ค่า es: ""

เมื่อเปลี่ยนรหัสใน laravel สำหรับสิ่งนี้:

 public function SetActivities(Request $request)
{
    $re = 'a';
    return $re;

}

บุรุษไปรษณีย์:

C#: a

เหตุใดงานที่สองจึงถูกต้อง


person Crashman    schedule 27.10.2019    source แหล่งที่มา
comment
หากการส่งคืนของ 'a' ใช้งานได้แสดงว่าปัญหาคือบางสิ่งใน $re = $request[0]['Name'];   -  person Patrick Goode    schedule 27.10.2019
comment
สวัสดีแพทริค ประโยคนั้นใช้ได้อย่างถูกต้องเมื่อใช้เช็คบุรุษไปรษณีย์ มันแปลกมาก   -  person Crashman    schedule 28.10.2019
comment
พบปัญหาคือคำขอเข้าถึง: $act = $request-›json()-›all(); นอกจากนี้: $request->getContent();   -  person Crashman    schedule 28.10.2019


คำตอบ (1)


พบ

รหัสที่ถูกต้อง:

 $request->getContent();
 //also this one works
 $request->json()->all();

แทนที่จะเป็นประโยค $request เท่านั้น

person Crashman    schedule 27.10.2019