Twilio电话说出现了应用程序错误

时间:2016-06-02 01:13:03

标签: twilio twiml twilio-click-to-call

我使用此命令拨打电话。我在亚马逊s3中托管了xml并将其公之于众。电话说,"抱歉,发生了应用程序错误。请帮忙

curl -XPOST https://api.twilio.com/2010-04-01/Accounts/kjfwbkjfejbfgeirbgiregribg/Calls.json -d "Url=http://read-voice.xyz.s3-website-us-east-1.amazonaws.com/voice.xml" -d "To=%2B1234567812" -d "From=%2B1234567812" -u 'ssllsdnf wfwefklwefwefwef:wjfdbewfergergerg'

这是XML

<?xml version="1.0" encoding="UTF-8"?>
<Response>
<Say voice="alice">Thanks for trying our documentation. Enjoy!</Say>
</Response>

这是调试器中的错误

<Html>
<Head>
    <Title>405 Method Not Allowed</Title>
</Head>
<Body>
    <H1>405 Method Not Allowed</H1>
    <Ul>
        <Li>Code: MethodNotAllowed</Li>
        <Li>Message: The specified method is not allowed against this resource.</Li>
        <Li>Method: POST</Li>
        <Li>ResourceType: OBJECT</Li>
        <Li>RequestId: xyxafsgjsk</Li>
        <Li>HostId: xyzt8=</Li>
    </Ul>
    <Hr/>
</Body>

1 个答案:

答案 0 :(得分:2)

您可以使用浏览器检查S3提供的内容。

您需要确保S3将您的xml作为"content-type"的{​​{1}}并且"text/xml"确实位于响应的第一行。

同时检查Twilio呼叫日志以进行逐步调试,您应该看到有关错误的http请求的更多信息,其中包含S3的响应标头和内容类型。

出于测试目的,您还可以使用TwiML Bins,您可以在“工具”&gt;下的左侧菜单中找到它们。 “开发者中心”。使用您的xml在那里创建一个bin,您将获得一个可以使用的URL,而不是您的S3 URL。

TwiML Bins在第一行不需要<?xml version="1.0" encoding="UTF-8"?>,只需将xml放在那里。