2016-11-07 94 views
3

我在swift 3中使用Alamofire 4.0.1库;我在寻找HTTP状态行(如https://www.w3.org/Protocols/rfc2616/rfc2616-sec6.html中所述)。我可以得到状态码,标题,一切,但不是状态消息。在Alamofire中获取HTTP状态行

我在查询一个REST API,它在描述问题的“Forbidden”关键字后给出403个响应:像客户端没有被批准访问,或者不允许访问特定的URL,因为它用于仅供内部使用。在我访问API的客户端中,我想给用户更多的细节,而不仅仅是“Forbidden”消息。

这是服务器发回(我知道这一点,因为我用爪,一个HTTP客户端发送一个HTTP请求并调查响应):

HTTP/1.0 403禁止(内部方法)

所以得出结论,有没有机会在Alamofire中获得HTTP状态行?

+0

它非常罕见的(我从来没有听说过它)来使用,则状态行传递一条错误消息。使用403会更常见,并且在响应的主体中包含消息,JSON对象或任何适合您的格式。 – mcfedr

+0

感谢您的意见,我将反馈转发给API所有者。 – rsc

回答

1

遗憾的是没有

Alamofire使用并没有实现任何字段/方法,让你了解Status-Line信息。要获得Status-Line,你应该使用其他更低层的框架。

只给你有关allHeaderFields,你可以看看我的回答在这里:

https://stackoverflow.com/a/36524454/5433235

+0

在这里你有类似的问题http://stackoverflow.com/a/18905087/5433235 – kamwysoc

+0

不完全是我想听到的,但谢谢你确认它不被支持。我需要与那个API人员交谈:-) – rsc