Javascript 在ajax请求中发送POST变量

Javascript 在ajax请求中发送POST变量,javascript,php,ajax,xmlhttprequest,Javascript,Php,Ajax,Xmlhttprequest,我有以下ajax,我试图将dataString作为参数发布到php文件中。 我已经尝试将dataString放入xhr.send(dataString)中。但没有成功。有办法吗 dataString = txCryptData; var xhr = new XMLHttpRequest(); var params="data="+dataString; xhr.onreadystatechange = function() { if (xhr.readyState == 4) {

我有以下ajax,我试图将
dataString
作为参数发布到php文件中。 我已经尝试将
dataString
放入
xhr.send(dataString)中。但没有成功。有办法吗

dataString = txCryptData;
var xhr = new XMLHttpRequest();
var params="data="+dataString;
xhr.onreadystatechange = function() {
 if (xhr.readyState == 4) {
       alert(xhr.responseText);
     }
}
xhr.open('POST', 'tokenize.php', true);
xhr.send();  

在php中,我尝试了$_POST['params'];要获取PHP中ajax请求发布的值,请使用以下命令获取随ajax发送的字符串:

$data = file_get_contents("php://input");
在JS中:

dataString = txCryptData;
var xhr = new XMLHttpRequest();
var params="data="+dataString;
xhr.onreadystatechange = function() {
 if (xhr.readyState == 4 && xhr.status==200) {
       alert(xhr.responseText);
     }
}
xhr.open('POST', 'tokenize.php', true);
xhr.send(params); 
setRequestHeader(“内容类型”,“应用程序/x-www-form-urlencoded”); xhr.send(参数);
您可能需要将这些行添加到js代码段中

为什么不发送变量参数?很抱歉,我尝试了。但是没有成功。我认为问题出在php中?我使用$_POST['params'];我在这里更改了fetchYa,这是我在php$data=file\u get\u contents(“php://input"); 回波数据;
    $.ajax({
    type: 'POST',
    // make sure you respect the same origin policy with this url:
    url: 'youUrl',
    data: { 
        'Joo': 'bar', 
        'ca$libri': 'no$libri' //  $ sign in the parameter name seems unusual, I would avoid it
    },
    success: function(msg){
        alert('Value' + msg);
    }
});