【问题标题】:Get rid of "The requested resource [path] does not match convention mapped to '/Content'"摆脱“请求的资源 [路径] 与映射到 '/Content' 的约定不匹配”
【发布时间】:2016-06-10 09:17:09
【问题描述】:

我正在使用一个自托管的 Nancy 应用程序,将其用作 Api。

我在我的服务器上发布了它,现在我正在开发一个应该使用这个 API 的网络应用程序。

当我请求GET http://myApi:[port]/api/token时出现问题。

当我使用邮递员进行测试时,我得到了这个:

  • StatusCode : 200
  • 响应正文包含我要求的令牌

当我使用我的网络应用程序时,我在 nancy 请求跟踪中得到了这个:

  • StatusCode : 500
  • 日志消息:

    [StaticContentConventionBuilder] 请求的资源“/api/token”与映射到“/Content”的约定不匹配

所以,如果我明白这意味着什么:在第二次请求中,Nancy 正在尝试提供静态内容,这不是我希望他做的,因为我只想用我的令牌发回一个 json。

我遇到了一些主题,据说我们可以更改 staticContentConventionsBuilder 的行为,但大多数只是更改静态内容文件夹。

我确保我的请求和响应的标头中应包含 Content-type : application/json

Postman 请求和 web-apps 请求不是从同一台机器发出的,而是属于同一网络的一部分,并且允许使用 CORS。

【问题讨论】:

    标签: c# node.js nancy self-hosting


    【解决方案1】:

    因此,在请求的标头中添加一行似乎对我有用。 这是我添加的行: Accept : "*/*;q=1"

    这是邮递员在每次请求时发送的标头的一部分。

    你可以在这里找到解释:

    purpose of the Q value in Accept header

    或在答案中提供的链接中。

    【讨论】:

      猜你喜欢
      • 2016-12-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-27
      • 2017-06-28
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多