我遇到了Restler的问题:我正在创建自己的API以从不同的网站访问我的数据。当我尝试向我的API发送POST请求时,它说:
{
error: {
code: 405
message: "Method Not Allowed"
}
debug: {
source: "Routes.php:422 at route stage"
stages: {
success: [1]
0: "get"
failure: [3]
0: "route"
1: "negotiate"
2: "message"
}
}
}
我的index.php代码是:
<?php
require_once 'vendor/restler.php';
use Luracast\Restler\Restler;
$r = new Restler();
$r->addAPIClass('v1'); // repeat for more
$r->handle(); //serve the response
我已经尝试过:
header('Access-Control-Allow-Methods: *');
但没有。有人可以帮忙吗?
答案 0 :(得分:4)
为了让Restler接受POST请求,必须在 v1 class 中实现post功能。
典型的例子可以是:
function post($request_data = NULL){
$result = new stdClass();
$result->sometitle = 'OK';
return $result;
}
其中$request_data
是带有传递的POST参数的数组。
只有POST方法才能访问此函数,它将返回:
{
"sometitle ": "OK"
}