我在Laravel中完成了API后端
我测试了Route::post('register', 'UserController@register');
使用http://localhost/cloudengine-sandbox/cloudsandboxbackend/public/api/register
,它工作正常。 我想测试短代码时遇到问题。
api.php
Route::post('register', 'UserController@register');
Route::post('login', 'UserController@login');
Route::get('profile', 'UserController@getAuthenticatedUser');
Route::get('/shortcodes', 'ShortcodeController@index')
->name('shortcodes.index');
Route::post('/shortcodes', 'ShortcodeController@store')
->name('shortcodes.store');
Route::get('/shortcodes/{shortcode}', 'ShortcodeController@show')
->name('shortcodes.show');
Route::put('/shortcodes/{shortcode}', 'ShortcodeController@update')
->name('shortcodes.update');
Route::delete('/shortcodes/{shortcode}', 'ShortcodeController@destroy')
->name('shortcodes.destroy');
我要在POSTMAN中键入什么来测试每个短代码。
我输入了http://localhost/cloudengine-sandbox/cloudsandboxbackend/public/api/shortcodes/show
我希望还可以,但给出了404未找到
答案 0 :(得分:1)
如果您正在为应用程序编写测试用例,那么
在.env
中设置应用程序网址。
APP_URL=http://web.local //Any url that you are using.
因为laravel使用APP_URL
中的.env
创建了一个网址。
如果您正在使用POSTMAN进行测试
还要确保在邮递员中传递标头ACCEPT=application/json
。
答案 1 :(得分:0)
路径上的名称只是快捷方式,但是当以URL的形式访问它们时,您仍然需要按照定义使用整个URL。
在您的示例中,URL必须为:
http://localhost/cloudengine-sandbox/cloudsandboxbackend/public/api/shortcodes/{shortcode}
在数据库中用有效的短代码ID替换{shortcode}
。
确保将shortcode
绑定到RouteServiceProvider
上的模型。