后续来了,wget居然有超时和重发机制,晕。整个请求过程有包括app的编译构建和代码检查,时长最多去到2h...又查询和测试了一翻,改回了curl,多个键值对拆分解码...
curl -G --data-urlencode "WORKSPACE=${WORKSPACE}" --data-urlencode "JOB_NAME=${JOB_NAME}" --data-urlencode "BUILD_NUM=${BUILD_NUMBER}" http://127.0.0.1:8000/creat_devops_build
==========================
单独记录下,查了N久...
由jenkins的shell发起get请求给django,curl发起的话,如果url中存在中文的话,会导致乱码问题,而wget并不会。
原因是curl会使用urlencode,但不会转文字的编码。
wget 则默认做了编码转换的工作。
curl http://127.0.0.1:8000/creat_devops_build?WORKSPACE=$WORKSPACE\&JOB_NAME=$JOB_NAME\&BUILD_NUM=$BUILD_NUMBER
/p>
"[http://www.w3.org/TR/html4/strict.dtd](http://www.w3.org/TR/html4/strict.dtd)">
Error responseError response
Error code: 400
Message: Bad request syntax ('GET /creat_devops_build?WORKSPACE=/Users/shaojiacheng/.jenkins/workspace/å\x9b½å\x86\x85ç¾\x8eå±\x85_android_sit&JOB_NAME=å\x9b½å\x86\x85ç¾\x8eå±\x85_android_sit&BUILD_NUM=8 HTTP/1.1').
Error code explanation: HTTPStatus.BAD_REQUEST - Bad request syntax or unsupported method.