Codeigniter 3 + Restserver 始终执行获取请求
Codeigniter 3 + Restserver always performs get request
我正在使用 Codeigniter 3.1.0, Restserver 从 here with documentation from here 下载。我也在使用 Chrome 的扩展名 Postman。
问题是,即使我从 Postman 的下拉菜单中选择 POST,它也会点击 get 方法...
下面是代码:
defined('BASEPATH') OR exit('No direct script access allowed');
require APPPATH . '/libraries/REST_Controller.php';
class Example extends REST_Controller {
function __construct() {
parent::__construct();
}
public function users_get() {
echo "get request";
}
public function users_post() {
echo "post request";
}
}
现在通过 Postman,如果我选择 GET 到 URL 示例域。com/api/example/users预览是获取请求
如果我选择 POST 到相同的 URL 示例域。com/api/example/users预览再次是 get request 而不是 post request
我在 config/rest.php 中没有做任何更改,我正在使用已实现的示例controllers/api/example
中的 Restserver
有谁知道为什么我不能点击POST方法?
我终于找到了导致问题的原因。我以前在这个域上安装了 SSL,但我试图用 HTTP 调用 API。
在 .htaccess 中我有重写规则
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
强制使用 HTTPS。
如果我使用 HTTPS 发出 POST 请求,它就像一个魅力。
如果我使用 HTTP 发出 POST 请求,它会重定向到 HTTPS(由于重写规则),因此有一个新的 GET 请求到新页面。
我正在使用 Codeigniter 3.1.0, Restserver 从 here with documentation from here 下载。我也在使用 Chrome 的扩展名 Postman。
问题是,即使我从 Postman 的下拉菜单中选择 POST,它也会点击 get 方法... 下面是代码:
defined('BASEPATH') OR exit('No direct script access allowed');
require APPPATH . '/libraries/REST_Controller.php';
class Example extends REST_Controller {
function __construct() {
parent::__construct();
}
public function users_get() {
echo "get request";
}
public function users_post() {
echo "post request";
}
}
现在通过 Postman,如果我选择 GET 到 URL 示例域。com/api/example/users预览是获取请求
如果我选择 POST 到相同的 URL 示例域。com/api/example/users预览再次是 get request 而不是 post request
我在 config/rest.php 中没有做任何更改,我正在使用已实现的示例controllers/api/example
中的 Restserver有谁知道为什么我不能点击POST方法?
我终于找到了导致问题的原因。我以前在这个域上安装了 SSL,但我试图用 HTTP 调用 API。
在 .htaccess 中我有重写规则
RewriteRule ^ https://%{HTTP_HOST}%{REQUEST_URI} [L,R=301]
强制使用 HTTPS。
如果我使用 HTTPS 发出 POST 请求,它就像一个魅力。
如果我使用 HTTP 发出 POST 请求,它会重定向到 HTTPS(由于重写规则),因此有一个新的 GET 请求到新页面。