亚洲乱码中文字幕综合,中国熟女仑乱hd,亚洲精品乱拍国产一区二区三区,一本大道卡一卡二卡三乱码全集资源,又粗又黄又硬又爽的免费视频

用nodejs實現(xiàn)json和jsonp服務的方法

 更新時間:2017年08月25日 14:55:07   作者:lengyuhong  
本篇文章主要介紹了用nodejs實現(xiàn)json和jsonp服務的方法,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

一、JSON和JSONP

JSONP的全稱是JSON with Padding,由于同源策略的限制,XmlHttpRequest只允許請求當前源(協(xié)議,域名,端口)的資源。如果要進行跨域請求,我們可以通過使用html的script標記來進行跨域請求,并在相應中返回要執(zhí)行的script代碼,其中可以直接使用JSON傳遞javascript對象。這種跨域的通訊方式成為JSONP。

由此我們可以看出兩者的區(qū)別:

json: 一種輕量級的數(shù)據(jù)格式。

 jsonp:為實現(xiàn)跨域,而采用的一種腳本注入方法。

備注:要了解更多json,可以參見我原先寫的一篇介紹json的文章:《JSON那些事》

二、實現(xiàn)

為了簡單起見,我們要讀取數(shù)據(jù)都是

var data = {'name': 'jifeng', 'company': 'taobao'};

1. 服務器端代碼:

var http = require('http');
var urllib = require('url');

var port = 10011;
var data = {'name': 'jifeng', 'company': 'taobao'};

http.createServer(function(req, res){
 var params = urllib.parse(req.url, true);
 console.log(params);
 if (params.query && params.query.callback) {
 //console.log(params.query.callback);
 var str = params.query.callback + '(' + JSON.stringify(data) + ')';//jsonp
 res.end(str);
 } else {
 res.end(JSON.stringify(data));//普通的json
 }  
}).listen(port, function(){
 console.log('server is listening on port ' + port); 
})

2. 游覽器端代碼,為方便起見,我直接用了jquery的方法

<html> 
<head> 
 <script src="http://code.jquery.com/jquery-latest.js"></script> 
 <meta http-equiv="Content-Type" content="text/html; charset=utf-8"> 
</head> 
<body> 
<script type="text/javascript"> 
function get_jsonp() { 
 $.getJSON("http://10.232.36.110:10011?callback=?", 
 function(data) {
 $('#result').val('My name is: ' + data.name); 
 }); 
} 
</script> 
<a href="javascript:get_jsonp();" rel="external nofollow" >Click me</a><br /> 
<textarea id="result" cols="50" rows="3"></textarea> 
</body> 
</html> 

jquery中getJSON()方法可以參見:http://www.w3school.com.cn/jquery/ajax_getjson.asp

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。

相關文章

  • 詳解基于Node.js的微信JS-SDK后端接口實現(xiàn)代碼

    詳解基于Node.js的微信JS-SDK后端接口實現(xiàn)代碼

    本篇文章主要介紹了詳解基于Node.js的微信JS-SDK后端接口實現(xiàn)代碼,具有一定的參考價值,有興趣的可以了解一下
    2017-07-07
  • 從零開始學習Node.js

    從零開始學習Node.js

    這篇文章主要介紹了從零開始學習Node.js結合具體實例形式分析了使用方法與相關注意事項,需要的朋友可以參考下,希望能夠給你帶來幫助
    2021-09-09
  • node.js版本降級/升級的實現(xiàn)

    node.js版本降級/升級的實現(xiàn)

    在項目開發(fā)過程中,不同項目使用的nodejs版本不同,有時會因為node版本過高或太低,導致報錯,本文主要介紹了node.js版本降級/升級的實現(xiàn),具有一定的參考價值,感興趣的可以了解一下
    2024-05-05
  • 使用nodejs寫接口的詳細步驟

    使用nodejs寫接口的詳細步驟

    這篇文章主要給大家介紹了關于使用nodejs寫接口的詳細步驟,在Node.js中接口可以采用多種形式,包括函數(shù)接口、對象接口和事件接口等,需要的朋友可以參考下
    2023-10-10
  • 使用VS開發(fā) Node.js指南

    使用VS開發(fā) Node.js指南

    這篇文章主要介紹了使用VS開發(fā) Node.js的方法,主要是使用NTVS(Node.js Toolsfor Visual Studio)來實現(xiàn),有需要的小伙伴參考下
    2015-01-01
  • node.js express框架實現(xiàn)文件上傳與下載功能實例詳解

    node.js express框架實現(xiàn)文件上傳與下載功能實例詳解

    這篇文章主要介紹了node.js express框架實現(xiàn)文件上傳與下載功能,結合具體實例形式詳細分析了node.js express框架針對文件上傳與下載的前后臺相關實現(xiàn)技巧,需要的朋友可以參考下
    2019-10-10
  • koa源碼中promise的解讀

    koa源碼中promise的解讀

    這篇文章主要介紹了koa源碼中promise的解讀,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-11-11
  • 深入分析node.js的異步API和其局限性

    深入分析node.js的異步API和其局限性

    這篇文章首先給大家介紹了為什么要用異步API,其次node.js異步api在使用過程有一些什么樣的限制呢,對于這個問題我們下面來看看這篇關于node.js異步的介紹分析吧,有需要的可以參考借鑒。
    2016-09-09
  • 詳解nodejs解壓版安裝和配置(帶有搭建前端項目腳手架)

    詳解nodejs解壓版安裝和配置(帶有搭建前端項目腳手架)

    這篇文章主要介紹了詳解nodejs解壓版安裝和配置(帶有搭建前端項目腳手架) ,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2018-12-12
  • NVM管理node版本以及報錯解決

    NVM管理node版本以及報錯解決

    在開發(fā)過程中有時候會遇到老項目和新項目node版本不一致的情況,這篇文章主要給大家介紹了關于NVM管理node版本以及報錯解決方法的相關資料,文中通過圖文介紹的非常詳細,需要的朋友可以參考下
    2023-12-12

最新評論