У моего маршрута / api.php есть эти маршруты:
Route::post('/signup' , 'UserApiController@signup');
Route::post('/logout' , 'UserApiController@logout');
Route::post('/verify' , 'UserApiController@verify');
но когда я пытаюсь получить доступ к почтальону таким образом, он показывает, что объект не найден:
localhost/my_webiste/api/signup
здесь функция регистрации userapicontroller:
public function signup(Request $request)
{
$this->validate($request, [
'social_unique_id' => ['required_if:login_by,facebook,google','unique:users'],
'device_type' => 'required|in:android,ios',
'device_token' => 'required',
'device_id' => 'required',
'login_by' => 'required|in:manual,facebook,google',
'first_name' => 'required|max:255',
'last_name' => 'required|max:255',
'email' => 'required|email|max:255|unique:users',
'mobile' => 'required',
'password' => 'required|min:6',
]);
try{
$User = $request->all();
$User['payment_mode'] = 'CASH';
$User['password'] = bcrypt($request->password);
$User = User::create($User);
return $User;
} catch (Exception $e) {
return response()->json(['error' => trans('api.something_went_wrong')], 500);
}
}
вот вывод почтальона почтового запроса localhost/mywebsite/api/signup:
<title>Object not found!</title>
<link rev = "made" href = "mailto:postmaster@localhost" />
<h1>Object not found!</h1>
The requested URL was not found on this server.
If you entered the URL manually please check your
spelling and try again.
Вы используете свой api с php artisan или внутри apache? Обычно, когда вы запускаете php artisan serve, он размещается в порту по умолчанию 8000. Поэтому вам нужно использовать номер порта в почтальоне.
Я напрямую отправляю запрос в почтальон
@Nandan попробуйте URL с протоколом http://localhost/mywebsite/api/signup
тот же выходной объект не найден, я думаю, что мой путь неправильный






Ваш код правильный. Похоже, вам не хватает общедоступного URL-адреса
localhost/my_webiste/public/api/signup
Я тоже пробовал это, но ошибка 404 не найдена, и здесь промежуточное ПО для защищенной api.php функции mapApiRoutes () {Route :: group (['middleware' => 'api', 'namespace' => $ this-> namespace, 'prefix' => 'api / user',], function ($ router) {require base_path ('routes / api.php');}); }
Вы запрашиваете с помощью api / signup, а не api / user. Удалите пространство имен и префикс, затем попробуйте получить доступ к своему методу контроллера или нет. Я думаю, что будет лучше для отладки того, что не так с вашей группой маршрутов, проверяя одну за другой.
Убедитесь, что в вашем почтальоне добавлен заголовок accept = application/json.
Поместите в свой пост заголовки, полученные от laravel для ответа об ошибке + если вы можете, версия curl запроса почтальона
показать свой запрос почтальона