首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >当url请求时,Rest不会在postman中工作。

当url请求时,Rest不会在postman中工作。
EN

Stack Overflow用户
提问于 2017-11-24 05:58:21
回答 2查看 4.6K关注 0票数 0

我已经在控制台中通过这个cmd启动了服务器,并且运行良好。

代码语言:javascript
复制
php -S localhost:8000 -t public

当我在邮递员中调用API以获取这样的流明时:

代码语言:javascript
复制
localhost:8000/GitHub/twinfield/public/index.php/user

API适用于insert,但当我像这样调用时:

代码语言:javascript
复制
localhost:8000/GitHub/twinfield/user

错误如下:

(1/1) Application->handleDispatcherResponse(array(0)) in RoutesRequests.php (第226行)在RoutesRequests.php (第164行)在RoutesRequests.php中的NotFoundHttpException (第413行)在应用->在RoutesRequests.php (第166行)中发送通过管道(数组()、对象(闭包)在应用程序->调度(Null)在RoutesRequests.php (第107行)在应用->运行()在index.php (第28行)

我的路由文件在路由/web.php中:

代码语言:javascript
复制
$router->get('/', function () use ($router) {
    //print_r('1234');die;
    return $router->app->version();
});

$router->get('user','userController@index');
$router->get('user/{id}','userController@getuser');      
$router->post('user','userController@createuser');
$router->post('user/{id}','userController@updateuser');    
$router->delete('user/{id}','userController@deleteuser');

我已经尝试过在public/index.php中解决这个问题,但没有成功。

代码语言:javascript
复制
$request = Illuminate\Http\Request::capture();
$app->run($request);

我在本地和Xampp一起工作。数据库为MySQL,PHP为7.1。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2017-11-27 08:34:20

先生,您忘了网址链接,否则可能会错过。当我们启动服务器时(在laravel中,命令是php artisan serve),它总是属于从调用它的位置开始的路径。

就像在您的例子中一样,您的路径是xampp/htdocs/GItHub/twinfield (我想)。

代码语言:javascript
复制
localhost:8000/GitHub/twinfield/public/index.php/user

所以如果你这样打电话:

代码语言:javascript
复制
localhost:8000/GitHub/twinfield/user

它从未起作用,因为您定义了路由:

代码语言:javascript
复制
$router->get('user','userController@index'); 
$router->post('user','userController@createuser');

这就是为什么您必须只使用路线和类型的名称。打开postman,用type->get添加这一行:

代码语言:javascript
复制
localhost:8000/user

您将获得DB中的所有用户。如果使用类型->post添加这一行。

代码语言:javascript
复制
localhost:8000/user

而不应该在要保存的表中的字段中发布body。

票数 0
EN

Stack Overflow用户

发布于 2017-11-24 06:54:58

经过多次尝试,我觉得自己犯了一个愚蠢的错误。这是网址:

代码语言:javascript
复制
localhost:8000/GitHub/twinfield/user

因为新服务器是由命令启动的,所以它属于该url。所以我用这个网址在邮递员和get和比post。

代码语言:javascript
复制
localhost:8000/user

你知道,它就像一种魅力。在这个解决方案中不需要其他任何东西。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/47467156

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档