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/n/257946.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
小蓝小蓝
上一篇 2024-12-15 12:47
下一篇 2024-12-15 12:47

相关推荐

  • JS Proxy(array)用法介绍

    JS Proxy(array)可以说是ES6中非常重要的一个特性,它可以代理一个数组,监听数据变化并进行拦截、处理。在实际开发中,使用Proxy(array)可以方便地实现数据的监…

    编程 2025-04-29
  • 掌握magic-api item.import,为你的项目注入灵魂

    你是否曾经想要导入一个模块,但却不知道如何实现?又或者,你是否在使用magic-api时遇到了无法导入的问题?那么,你来到了正确的地方。在本文中,我们将详细阐述magic-api的…

    编程 2025-04-29
  • 服务器安装Python的完整指南

    本文将为您提供服务器安装Python的完整指南。无论您是一位新手还是经验丰富的开发者,您都可以通过本文轻松地完成Python的安装过程。以下是本文的具体内容: 一、下载Python…

    编程 2025-04-29
  • STUN 服务器

    STUN 服务器是一个网络服务器,可以协助网络设备(例如 VoIP 设备)解决 NAT 穿透、防火墙等问题,使得设备可以正常地进行数据传输。本文将从多个方面对 STUN 服务器做详…

    编程 2025-04-29
  • 解决docker-compose 容器时间和服务器时间不同步问题

    docker-compose是一种工具,能够让您使用YAML文件来定义和运行多个容器。然而,有时候容器的时间与服务器时间不同步,导致一些不必要的错误和麻烦。以下是解决方法的详细介绍…

    编程 2025-04-29
  • 解析js base64并转成unit

    本文将从多个方面详细介绍js中如何解析base64编码并转成unit格式。 一、base64编码解析 在JavaScript中解析base64编码可以使用atob()函数,它会将b…

    编程 2025-04-29
  • Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的解决方法

    本文将解决Node.js使用Body-Parser处理HTTP POST请求时,特殊字符无法返回的问题。同时,给出一些相关示例代码,以帮助读者更好的理解并处理这个问题。 一、问题解…

    编程 2025-04-29
  • t3.js:一个全能的JavaScript动态文本替换工具

    t3.js是一个非常流行的JavaScript动态文本替换工具,它是一个轻量级库,能够很容易地实现文本内容的递增、递减、替换、切换以及其他各种操作。在本文中,我们将从多个方面探讨t…

    编程 2025-04-28
  • Vertx网关:高效率的API网关中心

    Vertx是一个基于JVM的响应式编程框架,是最适合创建高扩展和高并发应用程序的框架之一。同时Vertx也提供了API网关解决方案,即Vertx网关。本文将详细介绍Vertx网关,…

    编程 2025-04-28
  • Elasticsearch API使用用法介绍-get /_cat/allocation

    Elasticsearch是一个分布式的开源搜索和分析引擎,支持全文检索和数据分析,并且可伸缩到上百个节点,处理PB级结构化或非结构化数据。get /_cat/allocation…

    编程 2025-04-28

发表回复

登录后才能评论