Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/71.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
Jquery 将CURL转换为$.Ajax_Jquery_Ruby On Rails_Ajax_Curl_Spotify - Fatal编程技术网

Jquery 将CURL转换为$.Ajax

Jquery 将CURL转换为$.Ajax,jquery,ruby-on-rails,ajax,curl,spotify,Jquery,Ruby On Rails,Ajax,Curl,Spotify,我使用的是SpotifyAPI,示例代码给了我一个curl请求。我试图将其转换为ajax请求,但遇到了一些问题 curl代码: curl -X POST "https://api.spotify.com/v1/users/12166097089/playlists" -H "Accept: application/json" -H "Authorization: Bearer <super long encryption string>" -H "Content-Type: appl

我使用的是SpotifyAPI,示例代码给了我一个curl请求。我试图将其转换为ajax请求,但遇到了一些问题

curl代码:

curl -X POST "https://api.spotify.com/v1/users/12166097089/playlists" -H "Accept: application/json" -H "Authorization: Bearer <super long encryption string>" -H "Content-Type: application/json" --data "{\"name\":\"NewPlaylist\",\"public\":false}"
curl-X POST”https://api.spotify.com/v1/users/12166097089/playlists“-H”Accept:application/json“-H”Authorization:Bearer“-H”内容类型:application/json”--数据“{\'name\:\'NewPlaylist\”,\'public\':false}”
我尝试的AJAX:

function create_playlist(user, hash) {
    xhr=new XMLHttpRequest();
    xhr.onreadystatechange=function(){
        if(xhr.readyState==4 && xhr.status==200){
            console.log(xhr.responseText);
        }
    };
    $.ajax({
        url:'https://api.spotify.com/v1/users/' + user + '/playlists',
        beforeSend: function(xhr) {
            xhr.setRequestHeader('Authorization', 'Bearer ' + '<same super long string>');
            xhr.setRequestHeader('Accept-Language', 'en_US');
        },
        type: 'POST',
        contentType: 'application/json',
        data: {
            "name":"Temp Playlist",
            "public": false
        },
        dataType: 'JSON',
        success: function (response) {
            console.log(response);
        },
        error: function() {
            alert("it failed");
        }
    });
}
函数创建播放列表(用户、散列){
xhr=newXMLHttpRequest();
xhr.onreadystatechange=函数(){
如果(xhr.readyState==4&&xhr.status==200){
console.log(xhr.responseText);
}
};
$.ajax({
网址:'https://api.spotify.com/v1/users/“+用户+”/播放列表”,
发送前:函数(xhr){
setRequestHeader('Authorization','Bearer'+'');
setRequestHeader('Accept-Language','en_-US');
},
键入:“POST”,
contentType:'应用程序/json',
数据:{
“名称”:“临时播放列表”,
“公众”:虚假
},
数据类型:“JSON”,
成功:功能(响应){
控制台日志(响应);
},
错误:函数(){
警报(“它失败”);
}
});
}

如果作为
应用程序/json
发送,则需要对数据进行字符串化。ajax不会为您这样做

var dataObj = {
        "name":"Temp Playlist",
        "public": false
    }

$.ajax({
   ......
    data: JSON.stringify(dataObj),
    dataType: 'JSON',
    success: function (response) {
        console.log(response);
    },
    error: function() {
        alert("it failed");
    }
});

也无需创建
新的XMLHttpRequest()
。这就是
$。ajax
已经在做的事情

如果以
application/json
$的形式发送,则需要对数据进行字符串化。ajax不会为您这样做

var dataObj = {
        "name":"Temp Playlist",
        "public": false
    }

$.ajax({
   ......
    data: JSON.stringify(dataObj),
    dataType: 'JSON',
    success: function (response) {
        console.log(response);
    },
    error: function() {
        alert("it failed");
    }
});

也无需创建
新的XMLHttpRequest()
。这就是
$。ajax
已经在做的事情

如果以
application/json
$的形式发送,则需要对数据进行字符串化。ajax不会为您这样做

var dataObj = {
        "name":"Temp Playlist",
        "public": false
    }

$.ajax({
   ......
    data: JSON.stringify(dataObj),
    dataType: 'JSON',
    success: function (response) {
        console.log(response);
    },
    error: function() {
        alert("it failed");
    }
});

也无需创建
新的XMLHttpRequest()
。这就是
$。ajax
已经在做的事情

如果以
application/json
$的形式发送,则需要对数据进行字符串化。ajax不会为您这样做

var dataObj = {
        "name":"Temp Playlist",
        "public": false
    }

$.ajax({
   ......
    data: JSON.stringify(dataObj),
    dataType: 'JSON',
    success: function (response) {
        console.log(response);
    },
    error: function() {
        alert("it failed");
    }
});


也无需创建
新的XMLHttpRequest()
。这就是
$.ajax
已经在做的事情。ajax返回什么?它应该返回一个JSON对象ajax返回什么?它应该返回一个JSON对象ajax返回什么?它应该返回一个JSON对象ajax返回什么?它应该返回一个JSON对象如果我不需要XMLHttpRequest,如何发送授权标头?与您的发送方式相同,
beforeSend
中的
xhr
参数与您在
$ajax
之前创建的对象不同。该函数创建一个闭包。API中还有一个
标题
选项,没关系,你是对的,我不需要对象,我可以使用xhr!非常感谢你。成功了!如果我不需要XMLHttpRequest,我如何发送授权头?与您的发送方式相同,
beforeSend
中的
xhr
参数与您在
$ajax
之前创建的对象不同。该函数创建一个闭包。API中还有一个
标题
选项,没关系,你是对的,我不需要对象,我可以使用xhr!非常感谢你。成功了!如果我不需要XMLHttpRequest,我如何发送授权头?与您的发送方式相同,
beforeSend
中的
xhr
参数与您在
$ajax
之前创建的对象不同。该函数创建一个闭包。API中还有一个
标题
选项,没关系,你是对的,我不需要对象,我可以使用xhr!非常感谢你。成功了!如果我不需要XMLHttpRequest,我如何发送授权头?与您的发送方式相同,
beforeSend
中的
xhr
参数与您在
$ajax
之前创建的对象不同。该函数创建一个闭包。API中还有一个
标题
选项,没关系,你是对的,我不需要对象,我可以使用xhr!非常感谢你。成功了!