Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/227.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
将curl转换为Javascript ajax代码_Javascript_Php_Jquery_Ajax_Curl - Fatal编程技术网

将curl转换为Javascript ajax代码

将curl转换为Javascript ajax代码,javascript,php,jquery,ajax,curl,Javascript,Php,Jquery,Ajax,Curl,如何将这个curl脚本转换为JavaScript中的AJAX请求 curl -X POST -d "grant_type=password&username=admin&password=Demo1234" -u "<ClientID>:<ClientSecret> " http://<host>/url/to/auth curl-X POST -d“授权类型=密码和用户名=管理员和密码=演示1234” -u“:”http

如何将这个curl脚本转换为JavaScript中的AJAX请求

curl -X POST
     -d "grant_type=password&username=admin&password=Demo1234"
     -u "<ClientID>:<ClientSecret> " http://<host>/url/to/auth
curl-X POST
-d“授权类型=密码和用户名=管理员和密码=演示1234”
-u“:”http:///url/to/auth

您的
curl
调用使用了三种方法:

  • 未处理的数据
  • HTTP身份验证
  • 模板制作?-不确定
  • 这是我最好想到的:

    $.ajax({
      "url": "http://<host>/url/to/auth",
      "data": "grant_type=password&username=admin&password=Demo1234",
      "processData": false,
      "beforeSend": function (xhr) {
        xhr.setRequestHeader ("Authorization", "Basic " + btoa("<ClientID>" + ":" + "<ClientSecret>"));
      }
    });
    
    $.ajax({
    “url”:”http:///url/to/auth",
    “数据”:“授权类型=密码&用户名=管理员&密码=演示1234”,
    “processData”:false,
    “发送前”:函数(xhr){
    xhr.setRequestHeader(“授权”、“基本”+btoa(“+”:“+”));
    }
    });
    

    用正确的值替换您的

    我将用纯
    JavaScript

    function sendData()
    {
        var formData = new FormData(); //create formData object to send data
            formData.append("grant_type, "password"); //via append you add data 
            formData.append("username", "admin"); 
            formData.append("password", "Demo1234");
        var xmlHttp = new XMLHttpRequest(); //create "ajax/xhr" object
            xmlHttp.onreadystatechange = function() //monitor status of response
            {
                if(xmlHttp.readyState === 4 && xmlHttp.status === 200) //if it's ok
                {
                    console.log(xmlHttp.responseText); //then output data
                }
            }
            xmlHttp.open("POST", "http://<host>/url/to/auth"); 
            xmlHttp.setRequestHeader("Authorization", "Basic " + btoa("<ClientID>" + ":" + "<ClientSecret>");
            xmlHttp.send(formData);
    
    }
    
    函数sendData()
    {
    var formData=new formData();//创建formData对象以发送数据
    append(“grant_type,“password”);//通过append添加数据
    formData.append(“用户名”、“管理员”);
    formData.append(“密码”、“Demo1234”);
    var xmlHttp=new XMLHttpRequest();//创建“ajax/xhr”对象
    xmlHttp.onreadystatechange=function()//监视响应状态
    {
    if(xmlHttp.readyState==4&&xmlHttp.status==200)//如果可以
    {
    console.log(xmlHttp.responseText);//然后输出数据
    }
    }
    open(“POST”http:///url/to/auth"); 
    setRequestHeader(“授权”、“基本”+btoa(“+”:“+”);
    xmlHttp.send(formData);
    }
    
    以下是如何为任何卷曲进行此操作,而不仅仅是此卷曲:

  • 找邮递员()
  • 按照以下步骤将卷发导入邮递员:
  • 按照以下步骤为刚导入的curl生成代码段:

  • jqueryAjax是代码片段导出器之一。

    需要注意的是,您可以使用纯javascript来实现这一点。您不需要使用Jquery,尽管这确实会使它变得更简单。@richbai90是的……而且这种方法是跨浏览器的……请注意,作者要求在标记中使用Jquery方法。
    :)
    @richbai90不太好,原生XHR现在可以说是更好了,特别是如果你可以使用
    获取
    @SterlingArcher在IE 7中没有支持!
    :)
    记住银行仍然使用IE 6!!!有比开发者多得多的开发工作3步是有用的,让我的一天变得xD Thx!应该注意的是这样做将向用户公开这些值。在大多数情况下,如果包含
    密码
    参数,这不是一件好事。