如何将数据从C#发送到JavaScript / AJAX网页

时间:2013-09-20 13:04:45

标签: c# javascript jquery ajax .net-cf-3.5

基本上,我需要一个c#服务器才能将数据发送回先前已向服务器发送数据的HTML5网页。服务器正在从另一个应用程序检索数据,然后需要将这些数据发送到要显示的网页。

此c#服务器在.NET CF 3.5上运行,因此websockets不是一个选项(不支持)。

我在其他地方看到了一些建议,但没有任何符合这种特殊情况的必要标准。大多数其他实现似乎工作的基础是网页等待这些数据被发送。

欢迎任何和所有建议!

3 个答案:

答案 0 :(得分:1)

如果不能选择websockets,那么您将留下Comet

客户端你可以这样做:

(function poll(){
    $.ajax({ 
        url: "url",
        success: function(data) { /*display data*/ },
        complete: poll, 
        timeout: 30000 });
})();

这意味着每30秒发送一次ajax请求。

这不像websockets那样高效,但效果很好。

答案 1 :(得分:0)

  1. 创建.aspx页面并从中删除所有HTML。称之为GetData.aspx
  2. 在GetData.aspx.cs背后的代码中,您可以从HTML5页面接收POST数据。
  3. 做好工作。

  4. 使用jquery。

  5. $ .post(“GetData.aspx”,{name:value},function(json){    //在此处输入处理说明。 });

答案 2 :(得分:0)

有两种方法可以做到这一点:

使用ASP.NET网页

  1. 创建调用javascript函数的HTML元素
  2. 在javascript函数内部,使用ajax对 ASP.NET网页进行POST(使用C#作为后端)
  3. 获取ajax中的返回值"成功"块。
  4. 按照您的意愿使用......
  5. 使用jSON字符串返回

    1. 创建调用javascript函数的HTML元素
    2. 在javascript函数内部,使用ajax对 Web服务(使用C#作为后端)进行POST,返回一个jSON字符串。
    3. 使用所需的返回jSON数据。
    4. 我个人更喜欢jSON,因为它模拟了一个数据集,并且可以很好地处理HTML和ajax。