js搭建api服務器(js和api)

本文目錄一覽:

使用Node.js做 Restful API用什麼框架好

使用Node.js做restful api可以考慮使用express或者koa框架,具體操作如下:

var express = require(‘express’) //加載模塊

var app = express() //實例化之

var map = {“1″:{id:1,name:”test”},”2″:{id:2,name:”test”}} //定義一個集合資源,key為字符串完全是模仿java MAPT,E,否則誰會這麼去寫個hash啊!

app.get(‘/devices’,function(req, res){ //Restful Get方法,查找整個集合資源

res.set({‘Content-Type’:’text/json’,’Encodeing’:’utf8′});

res.send(map)

})

app.get(‘/devices/:id’,function(req, res){ //Restful Get方法,查找一個單一資源

res.set({‘Content-Type’:’text/json’,’Encodeing’:’utf8′});

res.send(map[req.param(‘id’)])

//console.log(req.param(‘id’))

})

app.post(‘/devices/’, express.bodyParser(), function(req, res){ //Restful Post方法,創建一個單一資源

res.set({‘Content-Type’:’text/json’,’Encodeing’:’utf8′});

map[req.body.id] = req.body

res.send({status:”success”,url:”/devices/”+req.body.id}) //id 一般由數據庫產生

})

app.put(‘/devices/:id’, express.bodyParser(), function(req, res){ //Restful Put方法,更新一個單一資源

res.set({‘Content-Type’:’text/json’,’Encodeing’:’utf8′});

map[req.body.id] = req.body

res.send({status:”success”,url:”/devices/”+req.param(‘id’),device:req.body});

})

app.delete(‘/devices/:id’,function(req, res){ //Restful Delete方法,刪除一個單一資源

res.set({‘Content-Type’:’text/json’,’Encodeing’:’utf8′});

delete map[req.param(‘id’)]

res.send({status:”success”,url:”/devices/”+req.param(‘id’)})

console.log(map)

})

app.listen(8888);

JS怎麼調用API接口

需要準備的材料分別是:電腦、html編輯器、瀏覽器。

1、首先,打開html編輯器,新建html文件,例如:index.html,引入jquery使用。

2、在index.html的script標籤中,輸入js代碼:

$.get(‘請求地址’, function(b) {

document.body.innerText = b;

});

3、瀏覽器運行index.html頁面,此時通過F12的開發者工具可知API接口被調用了。

如何利用AngularJS服務接入外部API

第一步:準備工作

將AngularJS腳本添加到該文檔的當中:

在此之後,可以在將這套CCS樣式添加到行內或者獨立的文件當中:

*{

-webkit-box-sizing:border-box;

-moz-box-sizing:border-box;

box-sizing:border-box;

font-family:sans-serif;

}

body,html{margin:0;}

p{margin:0;}

input{width:100%;}

pre{

white-space:pre-wrap;

white-space:-moz-pre-wrap;

white-space:-pre-wrap;

white-space:-o-pre-wrap;

word-wrap:break-word;

}

div.repo{

border-bottom:1pxsolid;

cursor:pointer;

}

#search,#repo,#user{float:left;}

#search{width:20%;}

#repo{width:60%;}

#user{width:20%;}

如大家所見,其中不存在任何多餘的內容、只保留最基礎的布局方案——將搜索欄置於右側、庫信息位於中央、用戶庫同樣置於右側。我們還需要將對應代碼行打包至標籤當中,此後我們還要利用它顯示README文件內容——因為這些內容通常來自GitHub Flavored Markdown、而且其中一部分代碼行與用戶庫列表存在重疊。

當然,大家可以向其中添加更多樣式以提升成果的視覺效果——但請注意,本教程中的截圖都採取最基本的外觀設計。

大家可以未來需要編寫的JavaScript代碼置於本文檔的當中或者為其建立獨立文件,但獨立文件仍然需要處於AngularJS腳本之下。

第二步:模塊

現在我們可以為自己的應用程序創建一個模塊:

varapp=angular.module(‘githubsearch’,[]);

接下來利用ngApp指令將其添加到標籤當中:

第三步:控制器

我們還需要為自己的應用程序準備一套控制器。為了簡化創建流程,我們將只為應用準備一套控制器,這樣我們就不必考慮如何在不同控制器之間進行信息傳遞了:

app.controller(‘SearchController’,functionSearchController($scope){

});

第四步:基礎服務

我們需要對自己的GitHub服務進行定義:

app.factory(‘GitHub’,functionGitHub($http){

return{

};

});

我們將使用app.factory()方法,這樣就能保證返回對象附帶幾個以後將會用到的方法。我們將使用$http服務從GitHub的API中獲取數據。

第五步:搜索庫

我們服務中的第一項方法負責利用GitHub API對庫進行搜索。使用服務非常簡單(這項函數能夠進入由製造函數返回的對象):

searchRepos:functionsearchRepos(query,callback){

$http.get(”,{params:{q:query}})

.success(function(data){

callback(null,data);

})

.error(function(e){

callback(e);

});

}

$http.get()方法是執行GET請求的一種捷徑。第一條參數是我們希望訪問的URL。第二條參數則代表一個具備選項的對象。這裡我們只需要params對象——它是一個查詢參數散列,將被添加到該請求當中(其中q參數屬於搜索字符串,大家可以點擊此處了解更多相關信息)。

$http.get()會返回一項承諾。我們可以將監聽器附加在success()與error()上,並且據此調用回調函數。

第六步:搜索欄

為了使用我們在之前幾步中定義完成的函數,我們需要在自己的HTML當中添加搜索欄。

雲南北大青鳥設計培訓告訴你全棧編程需要掌握哪些能力?

對於大多數的程序員來說,全棧開發的概念應該不陌生了吧,今天我們就一起來了解一下,成為一個全棧開發程序員我們需要學習的能力有哪些。

基礎

HTML、CSS和JavaScript是必須掌握的,你還需要學習React、Vue或Angular等前端框架或庫。但是,你應該選擇哪一個?對於一個真正的全棧開發者,你可以在2019年選擇這三個框架中的任何一個。

Web組件

瀏覽器採用的Web組件終於離我們想要的標準越來越近了。2019年,我們將看到更多關於Web組件的討論,但它仍然不會在2019年達到臨界點。你可以密切地關注它們,但不需要花費大量時間在掌握如何構建Web組件上。

PWA

漸進式Web應用程序在2019年仍然會很熱門,但它複雜的功能可能不會流行起來(即推送通知)。

大多數情況下,你將使用HTTPS、AppShell和ServiceWorker來獲得一些額外的脫機功能、安全性和性能。你應該學習如何構建PWA,並使用像Lighthouse這樣的工具來測試它。

Safari為PWA添加了一些支持,實現漸進式Web應用程序功能可能會更容易一些。但說到底,你需要先學會使用manifest.json文件和ServiceWorker。谷歌正在這方面努力推進,但不要指望在2019年會看到任何突破。

REST與GraphQL

RESTfulAPI在2019年還會存在,你需要學習如何實現和設計這些API。你應該學會使用Node.js和Express.js來創建API服務器,在2019年,這兩個框架的組合仍然會佔主導地位。

現在出現了很多有關GraphQL的炒作,但它還不是可以贏得所有市場的大贏家。了解GraphQL可以解決哪些問題,以及如何在RESTfulAPI中用它來進行路由優化。大理java課程培訓機構認為這將是2019年重要的趨勢:不是如何單獨使用GraphQL,而是如何在極少數情況下使用GraphQL優化一些RESTfulAPI路由。

HTTP2

HTTP2變得越來越普遍,你需要知道如何使用這個協議來優化內容的傳輸。此外,HTTP3正在開發當中,你可以關注它,但它並不是你在2019年需要過分關注的東西。

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/257946.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-15 12:47
下一篇 2024-12-15 12:47

相關推薦

發表回復

登錄後才能評論