0
關於這個問題內容類型不匹配於Android發送JSON請求時Laravel
我想用用寫在Laravel的API抽射發送JSON請求,當我要求檢查服務器以確保響應應也是JSON類型....它說$request->expectsJson()
是錯誤的。
我做錯了什麼?
什麼是expectsJson在Laravel?:https://laravel.com/api/5.3/Illuminate/Http/Request.html#method_expectsJson
Laravel代碼:文件名:應用程序\例外\ Handler.php
protected function unauthenticated($request, AuthenticationException $exception)
{
\Log::info($request->headers->get('Content-Type'));
if ($request->expectsJson()) {
return response()->json(['Message' => trans("auth.failed")], 401);
}
return redirect()->guest(route('LoginForm'));
}
使用凌空
的Android Studio代碼發送請求
String Token = Common.getSharedPreference(currentContext, "TokenData");
Map<String, Object> jsonParams = new HashMap<>();
jsonParams.put("api_token", "1" + Token);
jsonParams.put("Content-Type", "application/json; charset=utf-8");
jsonParams.put("Accept", "application/json");
String Url = Common.URL + Common.prefixURL + viewProfileURL + "?api_token=" + Token;
JsonObjectRequest request = new JsonObjectRequest(Request.Method.POST, Url,
new JSONObject(jsonParams),
new Response.Listener<JSONObject>()
{
@Override
public void onResponse(JSONObject response)
{
listener.getResult(null);
}
},
new Response.ErrorListener()
{
@Override
public void onErrorResponse(VolleyError error)
{
}
});
你可以慷慨地給予覆蓋代碼嗎? – Pankaj
已添加。不確定您的API令牌。它似乎是在URL中,而不是身體 –
只是完美的。感謝分享這麼棒的知識。 +1和接受和賞金是美國 – Pankaj