【发布时间】:2017-06-01 05:04:05
【问题描述】:
我试图在我的 Laravel 应用程序中接收传真,但我似乎无法正确格式化 XML。
由于我只是第一次进行设置,因此我尝试模仿 Twilio 快速入门指南中的基本操作方法。
使用 Twilio 仪表板,我设置了 myapp.com/fax/sent 的 webhook 地址,以便在尝试发送传入传真时得到通知:
public function sent()
{
$twimlResponse = new SimpleXMLElement("<Response></Response>");
$recieveEl = $twimlResponse->addChild('Receive');
$receiveEl->addAttribute('action', '/fax/received');
return response($twimlResponse->asXML())
->header('Content-Type', 'text/xml');
}
我从 Twilio 得到的错误基本上是空的:
Error 12100 Document parse failure
Twilio 错误请求检查器没有显示头部或主体。
我还尝试返回一个硬编码的视图文件来代替构建 xml:
查看传真.发送:
<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Receive action="/fax/received" />
</Response>
然后将send函数改成:
public function sent()
{
return View::make('fax.sent')->header('Content-Type', 'text/xml');
}
这将返回相同的错误消息。
【问题讨论】:
-
当您转到
myapp.com/fax/sent时,您是否获得了具有正确内容类型的预期 XML? -
@Andy 是的,我愿意
-
我认为这无关紧要,但请尝试在您的 xml 标头中使用
utf-8而不是UTF-8 -
也不走运
-
嗯,听起来好像有些东西对它无效。您可以尝试将其加载到 xml 验证器中进行检查吗?这似乎是从 URL 加载它们:codebeautify.org/xmlvalidator
标签: laravel laravel-5 twilio twilio-twiml