【问题标题】:How can I write the javascript equivalent for cURL code?如何为 cURL 代码编写等效的 javascript?
【发布时间】:2020-11-07 01:35:19
【问题描述】:

我有以下输入字段:

 <input id="dataRequest" type="text" method="POST" border=None value=""/>

并开发了响应以下 cURL 命令的代码。

curl -v --insecure -H "Content-Type: application/x-www-form-urlencoded" -X POST -d 'dataRequest=demo1' https://localhost:443

在输入字段中输入值不起作用。

问题1:为什么cURL代码在填写字段时不起作用?

问题 2:我正在尝试使用 Javascript 创建一个按钮,当按下该按钮时将提交等效命令(到 cURL)。

这是我目前所拥有的,但它不起作用(没有任何反应)。

<button onclick="runDemo1()" name="button1" value="demo1">

<script>
function runDemo1() {
  let formData = new FormData();
  formData.append("dataRequest", "demo1");
  let xhr = new XMLHttpRequest();
  let page = window.location.host;
  xhr.open("POST", page, true);
  xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
  xhr.send(formData);
}
</script>

【问题讨论】:

标签: javascript curl button


【解决方案1】:

我把你的 curl 命令放到了这个网站上:https://reqbin.com/req/c-w7oitglz/convert-curl-to-http-request

您可以将网址从google 更改为您的localhost

var url = "https://google.com";

var xhr = new XMLHttpRequest();
xhr.open("POST", url);

xhr.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");

xhr.onreadystatechange = function () {
   if (xhr.readyState === 4) {
      console.log(xhr.status);
      console.log(xhr.responseText);
   }};

var data = "dataRequest=demo1";

xhr.send(data);

【讨论】:

  • 授予,谢谢!我从中学到了很多。不幸的是,它在我的情况下不起作用。我认为这是因为 http: 和 https: 之间的差异(cURL 命令中的 --insecure 标签)但这是一个不同的问题。
猜你喜欢
  • 1970-01-01
  • 2015-07-28
  • 2020-05-15
  • 1970-01-01
  • 2021-01-10
  • 2017-08-11
  • 1970-01-01
  • 2016-08-19
  • 1970-01-01
相关资源
最近更新 更多