Twilio 指向 Slim 框架的 Controller 方法时返回 404 错误
Twilio returning 404 error when pointing to Controller Method of Slim Framework
我正在尝试让 twilio 指向一个方法以开始调用。当我的 twimlApp 指向 www.example.com/twilio/dial.php
时,我可以毫无问题地进行调用,但是当我将它指向控制器方法 www.example.com/twilioApps/dial
时,我在查看 Twilio App Monitor 时收到 404 错误。
这里是 twilioApps/index.php
:
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL ^ E_NOTICE);
session_cache_limiter(false);
session_start();
require_once __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../twilio.php';
$app = new \Slim\Slim();
$app->get('/dial', function (){
$twilioObj = new twilioPlugin;
// get the phone number from the page request parameters, if given
if (isset($_REQUEST['tocall'])) {
$twilioObj->number = htmlspecialchars($_REQUEST['tocall']);
}
// wrap the phone number or client name in the appropriate TwiML verb
// by checking if the number given has only digits and format symbols
if (preg_match("/^[\d\+\-\(\) ]+$/", $twilioObj->number)) {
$numberOrClient = "<Number>" . $twilioObj->number . "</Number>";
} else {
$numberOrClient = "<Client>" . $twilioObj->clientName . "</Client>";
}
?>
<Response>
<Dial callerId="<?php echo $twilioObj->callerId ?>">
<?php echo $numberOrClient ?>
</Dial>
</Response>
<?php
});
$app->run();
我不知道这是 Slim 问题、.htaccess 问题还是 Twilio 问题。任何帮助表示赞赏。
好吧,我想通了,事实上我有 TwimlApp 使用 POST 请求来发送要呼叫的号码。然而,我在 slim 中使用的路由类型是 GET,我所要做的就是将 Twiml App 请求方法更改为 GET,它工作正常。
我正在尝试让 twilio 指向一个方法以开始调用。当我的 twimlApp 指向 www.example.com/twilio/dial.php
时,我可以毫无问题地进行调用,但是当我将它指向控制器方法 www.example.com/twilioApps/dial
时,我在查看 Twilio App Monitor 时收到 404 错误。
这里是 twilioApps/index.php
:
<?php
ini_set('display_errors', 1);
error_reporting(E_ALL ^ E_NOTICE);
session_cache_limiter(false);
session_start();
require_once __DIR__ . '/../vendor/autoload.php';
require __DIR__ . '/../twilio.php';
$app = new \Slim\Slim();
$app->get('/dial', function (){
$twilioObj = new twilioPlugin;
// get the phone number from the page request parameters, if given
if (isset($_REQUEST['tocall'])) {
$twilioObj->number = htmlspecialchars($_REQUEST['tocall']);
}
// wrap the phone number or client name in the appropriate TwiML verb
// by checking if the number given has only digits and format symbols
if (preg_match("/^[\d\+\-\(\) ]+$/", $twilioObj->number)) {
$numberOrClient = "<Number>" . $twilioObj->number . "</Number>";
} else {
$numberOrClient = "<Client>" . $twilioObj->clientName . "</Client>";
}
?>
<Response>
<Dial callerId="<?php echo $twilioObj->callerId ?>">
<?php echo $numberOrClient ?>
</Dial>
</Response>
<?php
});
$app->run();
我不知道这是 Slim 问题、.htaccess 问题还是 Twilio 问题。任何帮助表示赞赏。
好吧,我想通了,事实上我有 TwimlApp 使用 POST 请求来发送要呼叫的号码。然而,我在 slim 中使用的路由类型是 GET,我所要做的就是将 Twiml App 请求方法更改为 GET,它工作正常。