zoukankan      html  css  js  c++  java
  • Rails后台,Firefox Addons前端,JS的AJAX调用

    最近要开发一个程序,需要用到firefox addons前端,利用js发起ajax请求,后端用rails完成。

    Firefox Addons材料很是庞杂,初入门者可能被xul, xpcom, fuel等这些名词完全搞的晕头转向,FF嫌这还不够乱,又推出它的addons builder,试图规范化Addons的开发,又给出两个名词概念:content js和extension js,如果你下载FF的SDK,例子居然都运行不了。

    不必崩溃,我们可以找几个开源的代码作为基础,这里我参考的是一个国人写的ff_nextpage(https://github.com/sylecn/ff_nextpage),利用这个作为框架,搭建我们自己的addons

    要想在addon里调用ajax,幸运的是ff既没有限制cross-domain,也没有限制ajax调用行为自身。这里需要注意的是:

    1、FF没有太多说明在Addons里如何实现AJAX,我暂且将其视为跟普通JS没有区别的调用

    2、当传递JSON DATA, POST给服务器的时候,需要同时设定content-type和accept两个头域

    var dataToServer = {city: "shenzhen", summaries:this.allLinks};

    var stringToServer = JSON.stringify(dataToServer);

    var postBack = new XMLHttpRequest();

    postBack.onreadystatechange =

        function(){

            if (postBack.readyState == 4) {

                    if (postBack.status == 200) {

                        // Success

                        return;

                    }

                    //alert(postBack.status); //once error found

            }

            };

     

       postBack.open("POST", SERVER, true, null, null);  

        postBack.setRequestHeader("Content-Type", "application/json;charset=UTF-8");

        postBack.setRequestHeader("Accept", "application/json");

     postBack.send(stringToServer);

    3、Rails天生就支持json,因此在服务器端没有什么太多要注意的东西。

    下次分享一下,如何搞定FF的Addons内存泄漏问题

     

  • 相关阅读:
    简易httpserver 和客户端调用
    exe打包简易教程
    图像二值化和显示3D 的算法实现
    gitlab 生成标签
    Nginx 使用小结
    FFMPEG 切片过于占用cpu的问题
    神奇 linux 命令行 窗体穿越
    使用 SSH 在 Linux 上远程调试 .NET Core 实例 演示
    CentOS 7 yum 安装 Nginx 以及 TCP流转发
    Centos7 自动挂载分区硬盘 u盘的操作
  • 原文地址:https://www.cnblogs.com/mobileinternet/p/2543653.html
Copyright © 2011-2022 走看看