繁体   English   中英

使用JavaScript函数将Json对象发送到服务器

[英]Send a Json object to server with javascript function

我尝试将json对象发送到远程服务器,但没有收到成功消息。 请这段代码有什么问题:

  function sendSMS(){
    var input = '{"header":"****","****":*****,"****":"*****"}';
    var url = "https://**********&username=*****&password=*******";

    jQuery.ajax({
        type: "POST",
        crossDomain:true,
        url: url,
        data: JSON.stringify(input),
        contentType: 'application/json; charset=utf-8',
        dataType: 'json',
        async: false,
        success: function(){
           alert("success");
        }
    });
    }
    // html code
    <html>
<head>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.3.2/jquery.min.js"></script>
   <script type="text/javascript" src="http://www.json.org/json2.js"></script>
<script type="text/javascript" src="sendSMS.js"></script>
</head>

<body> 
<button onclick="sendSMS()">sendSMS</button>
</body>
</html>

请帮忙。

您必须简单地将ajax调用更改为此:

function sendSMS(){
var input = '{"header":"Ooredoo","msisdn":21620117297,"SMS":"Hello"}';
var url = "https://**********&username=*****&password=*******";

jQuery.ajax({
    type: "POST",
    crossDomain:true,
    url: url,
    data: JSON.parse(input),
    contentType: 'application/json; charset=utf-8',
    dataType: 'json',
    async: false,
    success: function(){
       alert("success");
    }
});
}

主要更改是将JSON.stringify更改为JSON.parse,这将帮助您将JSON数据解析为JSON对象,第二个更改是实际有效负载,在Hello后面,您最终错过了“”。

如果您还有其他问题,请问:)

另外我建议不要将用户名和密码作为querystring参数发送,使用带有适当有效负载的POST请求,如果可以通过ssl,则最后一次发送

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM