我在使用OpenResty的发送http请求方法中需要调用多个api接口,使用for循环,循环中第一次的调用没有问题,后续传入参数就混乱了,总是报400 bad request的错误,通过我的java api 查询到报错如下:
java.lang.IllegalArgumentException: Invalid character found in method name [59.134:80000x0d0x0apostman-token: ]. HTTP method names must be tokens
local res, err = httpc:request_uri(url, {
method = send_method,
body = send_body,
headers = send_headers,
keepalive_timeout = 60,
keepalive_pool = 10
})
httpc:close()
首先将各个参数打印出来,看下是否有超长的问题 解决办法:在application.properties文件中配置【server.tomcat.max-http-header-size=8192】
既然第一次请求能成功,说明不是http和https的问题
看下是否是异步请求导致循环延迟参数冲突