0

我通过 ajax 发送一个 json 对象:

function postJSON(){
$
.ajax({
    dataType : 'jsonp',
    jsonp : 'jsonp_callback',
    data : {
        message : "Hello World"
    },
    url : 'http://www.mypage.de/receiveJson.js',
    success : function() {
        alert("Success");
    },
});
}

我如何 alert(message)在服务器端执行?

谢谢

4

2 回答 2

1

* 编辑 *

重写是因为有人向我指出了 Javascript 的服务器端应用程序。我知道 node.js,但有点忽略了你在服务器端真正做 javascript 的可能性。无论如何,除非您的服务器端 javascript 的特殊风格与我熟悉的客户端实现的工作方式不同,否则 alert() 可能是对服务器端代码的错误调用,因为它会阻止正在运行的代码并尝试弹出一个对话框。如果可以选择写入控制台,我会这样做。

此外,我真诚地希望您不能从您的 ajax 代码直接触发服务器上的 alert() 调用。服务器上必须有某种方法才能生成警报。

于 2013-07-16T14:51:58.140 回答
1

getJSON 做一个帖子

JSON-P 通过生成<script>元素来工作。<script>元素使用 GET 请求加载外部脚本。无法将 JSON-P 与 POST 请求一起使用。

(嗯,不是不使用常规 XHR,从响应中解析出 JS 函数调用,然后使用 JSON.parse ......但是你应该只设置服务器以使用 JSON)。

如何在服务器端执行警报(消息)?

您需要将代码传递给可以评估它的服务器端。如果你想评估 JavaScript,你可以使用 node.js。然而:

  1. 允许将任意代码提交到您的服务器执行是非常危险的
  2. alert是一个在服务器上几乎没有意义的浏览器 API,您必须定义一个执行alert一些明智的操作(例如发送电子邮件或记录到数据库)的实现。
于 2013-07-16T14:47:22.940 回答