代码之家  ›  专栏  ›  技术社区  ›  Unome

请求的资源不支持带有Alamofire的http方法“T”(或“ST”)

  •  -1
  • Unome  · 技术社区  · 6 年前

    我遇到了一个奇怪的问题。使用Alamofire运行一系列HTTP请求时,我得到错误响应:

    (以上是GET请求)

    Alamofire.request(url, method: request.httpMethod, parameters: request.parameters, encoding: request.encoding, headers: request.headers).responseData { response in
    

    当我调试并查看请求.httpMethod它始终是完整的GET,但是不管怎样我都会得到这个错误。我试着遵循Alamofire中更深层的逻辑,但它似乎支持GET的值,因为我可以通过我的pod跟踪它。

    我启动Charles来监听一些http网络流量,看看它是否被标记为 GET T ,但该请求的流量根本没有显示。。。

    我在模拟器和设备上都做了模拟。

    如果我运行完全相同的http请求,但是使用 urlSession.uploadTask

    有人看到了吗?有没有人知道是什么导致了截短?我只能猜测它发生在阿拉莫菲尔,但我很困惑,从这里到哪里去。

    0 回复  |  直到 6 年前
        1
  •  1
  •   Sean Stayns Joakim Danielson    6 年前

    你用哪种编码?

    URLEncoding.default.

    如果您使用 Content-Type: application/json

    如果后端使用spring,则可能会导致此问题。这似乎是后端问题。

    还有一些人对莫亚有意见,阿拉莫菲尔在那里工作。。它是 一个奇怪的问题,但我很肯定,后端导致