我有Codeigniter 3,并且正在构建自己的API REST(没有任何外部库)。除了一件事,一切都在工作。当我在POSTMAN程序中以POST
,PUT
或DELETE
发出请求时,Codeigniter始终将其识别为GET
($_SERVER['REQUEST_METHOD']
返回我GET
)。如何配置Codeigniter以处理类型POST
,PUT
和DELETE
?我的Codeigniter正在HTTPS
上工作。在.htaccess中,我有
<Limit PUT DELETE>
order allow,deny
allow from all
</Limit>
解决方案
HOOK中的重定向存在问题。 $_SERVER['REDIRECT_REDIRECT_REDIRECT_REQUEST_METHOD']
解决了问题。
答案 0 :(得分:0)
您可以尝试下面的代码吗?
<LIMIT PUT DELETE OPTIONS PATCH>
order allow,deny
allow from all
</LIMIT>
,您还必须自动启动其他应用程序以使用您的API,并允许您的正面控制器或每个访问点的指定控制器中的所有动词:
class Rest_controller extends REST_Controller
{
public function __construct($config = 'rest')
{
parent::__construct($config);
header('Access-Control-Allow-Origin: *');
header("Access-Control-Allow-Headers: X-API-KEY, Origin, X-Requested-With, Content-Type, Accept, Access-Control-Request-Method, Authorization");
header("Access-Control-Allow-Methods: GET, POST, OPTIONS, PUT, DELETE");
$method = $_SERVER['REQUEST_METHOD'];
}
}