【问题标题】:How to run the HTTP request without using CURL如何在不使用 CURL 的情况下运行 HTTP 请求
【发布时间】:2016-01-02 11:05:20
【问题描述】:

我有基于 arm 的 busybox(嵌入式 Linux),二进制文件有限。如何在不使用 curl 的情况下进行 http post 或 put?

【问题讨论】:

  • 检查您是否有wget,它提供了一些类似的功能,但实际上,您应该告诉我们更多有关您的项目规范的信息。请不要在 cmets 中回复您的问题。此外,这很可能会被关闭,因为它与解决“if/then/else/endif”类型的编码问题无关。 stackExchange 上的相关站点,softwarerecs.stackexchange.comunix.stackexchange.com 可能是问这个问题的更好地方。祝你好运!

标签: curl busybox


【解决方案1】:

busyboxwget 但这有限且不适合发布。 您可以将busyboxnetcat(或nc)结合使用以获得结果。您只需为您的平台下载netcat 二进制文件。我们开始吧:

POST_PATH="/login.cgi"
HOST=199.188.1.99
BODY="Put here HTML body...."
BODY_LEN=$( echo -n "${BODY}" | wc -c )
echo -ne "POST ${POST_PATH} HTTP/1.0\r\nHost: ${HOST}\r\nContent-Type: application/x-www-form-urlencoded\r\nContent-Length: ${BODY_LEN}\r\n\r\n${BODY}" | \
  nc -i 3 ${HOST} 80

基于Sending HTTP POST request with netcat 帖子。

【讨论】:

【解决方案2】:

我和你有同样的问题,所以我决定从 alpine 创建最小图像,它比繁忙的盒子做得更多,比 ubuntu 少 https://hub.docker.com/r/prima101112/palugada

你可以做 curl traceroute 甚至 vim 来编辑 pod 或容器

或者如果你还想继续使用busybox,我通常会去

kubectl exec -it busybox -- wget {url}
kubectl exec -it busybox -- cat index.html

该命令将显示响应

希望这会有所帮助

【讨论】:

  • 这可能是一个很好的评论,但不是一个答案。请阅读规则。
  • 是的,对不起,我的错。我已经编辑了评论。谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2010-12-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2011-08-30
相关资源
最近更新 更多