当 twilio 尝试通过 POST 访问我的 REST API URL 以获取传入的 SMS 时,我看到了错误。
"An attempt to retrieve content from returned the HTTP status code 502. Please check the URL and try again.
这是什么错误以及如何解决?错误来自我的服务器还是 Twilio 端?我错过了什么吗?查看此处给出的 Twilio 网站:
http://www.twilio.com/docs/errors/11200
它说明了我们需要设置 Content-Header。那么我该怎么做呢?Web Api 和 twiml 的新手。
编辑:
这就是我目前在我的 webapi.config 下的内容
public static class WebApiConfig
{
public static void Register(HttpConfiguration config)
{
config.Routes.MapHttpRoute(
name: "DefaultApi",
routeTemplate: "{controller}/{id}",
defaults: new { id = RouteParameter.Optional }
);
我的路线配置有
public class RouteConfig
{
public static void RegisterRoutes(RouteCollection routes)
{
routes.IgnoreRoute("{resource}.axd/{*pathInfo}");
routes.MapRoute(
name: "Default",
url: "{controller}/{action}/{id}",
defaults: new { controller = "Home", action = "Index", id = UrlParameter.Optional }
);
}
我在 Global.asax 中添加了以下内容
protected void Application_Start()
{
AreaRegistration.RegisterAllAreas();
WebApiConfig.Register(GlobalConfiguration.Configuration);
FilterConfig.RegisterGlobalFilters(GlobalFilters.Filters);
RouteConfig.RegisterRoutes(RouteTable.Routes);
GlobalConfiguration.Configuration.Formatters.XmlFormatter.AddUriPathExtensionMapping("xml", "text/xml");
GlobalConfiguration.Configuration.Formatters.XmlFormatter.AddUriPathExtensionMapping("json", "application/json");
BundleConfig.RegisterBundles(BundleTable.Bundles);
}
如果我在我的 webapi.config 中添加 {action}.ext,我会收到 404 错误。所以现在我错过了什么:-(