我正在尝试通过Charles Web代理工具(版本4.5.4)捕获我的iOS应用程序的响应。我的Mac版本是Catalina 10.15.1。
更新到最新的Charles代理工具后,对于大多数API调用,我将获得304状态代码。我了解304是什么,这是未修改的https状态。但是它不显示JSON响应,或者至少我不知道如何查看响应JSON。
如果是200状态代码,我可以在Charles中看到响应。我已将屏幕截图作为示例来显示它的外观。
如您所见,如果响应显示为“=”,则为304重定向,如果显示为“{}”,则为200响应。是我的Charles问题,还是我应该使用我的iOS应用程序进行检查。由于我非常依赖Charles进行开发,因此任何指针都将不胜感激。
最佳答案
如果服务器检测到响应没有变化,它将返回 304未修改和空主体响应。这就是缓存机制的工作方式。
您可以通过在工具菜单中启用否缓存来绕过它,然后服务器将返回正确的响应。
这是Charles Proxy's No Caching或Proxyman's No Caching的文档。两者相同,但是Proxyman易于调试,尤其是对于iOS开发。
关于ios - 查尔斯4.5.4显示304(未修改)状态码,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59016501/