Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 请放心-使用Restassed进行测试时,获取操作超时错误。但相同的端点在浏览器中工作良好_Java_Rest Assured - Fatal编程技术网

Java 请放心-使用Restassed进行测试时,获取操作超时错误。但相同的端点在浏览器中工作良好

Java 请放心-使用Restassed进行测试时,获取操作超时错误。但相同的端点在浏览器中工作良好,java,rest-assured,Java,Rest Assured,我有一个端点要使用restassered进行测试。在浏览器/邮递员中打开该端点时,该端点工作正常。但是,在尝试使用重新启动测试时 我收到操作超时错误 我必须连接到代理才能使该端点在浏览器中工作。在rest assured中也使用了相同的代理 示例代码如下: given().proxy("My_Proxy_URL_HERE",8080).when().get("My_API_URL_Here").then().log().all(); 我得到的答复如下: “操作超时”,状态代码为503 我需要你

我有一个端点要使用
restassered
进行测试。在浏览器/邮递员中打开该端点时,该端点工作正常。但是,在尝试使用
重新启动测试时

我收到
操作超时错误

我必须连接到代理才能使该端点在浏览器中工作。在rest assured中也使用了相同的代理

示例代码如下:

given().proxy("My_Proxy_URL_HERE",8080).when().get("My_API_URL_Here").then().log().all();
我得到的答复如下:

“操作超时”,状态代码为503


我需要你的建议,什么可能是可能的问题,如何调试等任何建议是赞赏的。提前感谢。

这种行为可能有很多原因:

  • 地址是错误的,如果存在一些负载平衡器/代理,可以将其配置为等待一段时间,然后使用503状态代码进行响应。 注意,503不是“请求超时”,而是“服务不可用”

  • 请求url很好,但请求缺少一些头,因此负载平衡器/代理无法将请求路由到所需的服务器

如何检查这个?在这种情况下,有一些工具可以派上用场:

  • 检查负载平衡器/代理的访问日志,如果可能,甚至检查服务器的访问日志,并查看请求

  • 如果没有帮助,试着比较来自rest-assured和常规请求的请求。您可以使用工具,例如,there's others,或者您甚至可以使用自己的工具

  • 想法很简单: 在本地计算机的某个端口上启动“拦截器”(例如,9999)

    将拦截器配置为将所有请求转发到您选择的代理(此处由URL-My_proxy_URL_和端口8080标识)。 现在,请放心,您必须调用localhost:9999,此工具将拦截请求。您将能够检查它的内容—标题、正文、http方法—所有内容。
    对浏览器请求和比较执行相同的操作

    您使用的是哪个IDE?您是否已将代理设置添加到IDE中?您不必在代码中定义代理