Laravel API, возвращающий пустое / нулевое значение RestSharp C# - PullRequest
0 голосов
/ 28 апреля 2020

Я использую Laravel в качестве веб-API, который связывается с моим C# приложением.

Я пытаюсь сделать запрос на сообщение:

if ($validate){
        // Store query results in a variable
        $user = Login::where([
                ['BR_ID', $BR_ID],
                ['ClientID', $ClientID],
                ['ClientChkID', $ClientChkID],
                ['LastName', $LastName]
        ])->get();
        // Format contact number
        $ContactNo = $user[0]->ContactNo;
        $otpController = new \App\Http\Controllers\OTPController();
        $phone = $otpController->CheckContactValidity($ContactNo);
        // Append formatted number to laravel's collection object
        $user[0]->ValidContactNo = $phone;

        // send back a response
        return response()->json($user[0], 200);
} else {
        return response()->json(["error"=>"Client does not exist"], 204);
}

Код в операторе if работает хорошо и все возвращает нормально. Другая часть, тем не менее, вообще ничего не возвращает.

По сути, строка return response()->json(["error"=>"Client does not exist"], 204); всегда возвращает "" вместо { "error":"Client does not exist" }

1 Ответ

1 голос
/ 28 апреля 2020

Это чепуха. 204 код состояния - это ответ без содержания, так почему вы хотите что-то вернуть?

https://en.wikipedia.org/wiki/List_of_HTTP_status_codes#2xx_Success

код ответа можно проверить по

        $.ajax({
        url: "/test",
        type: 'GET',
        contentType: "application/json; charset=utf-8",
        dataType: 'json',
        success: function(res) {
        }
        })
        .done(function ( data, textStatus, jqXHR) {
                console.log(jqXHR.status); // 204
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...