美文网首页FrontGreeks-高级前端AngularJS&Angular2 实战专题ng2
Angular2-项目实战(续)-与服务端通信

Angular2-项目实战(续)-与服务端通信

作者: yitalalww | 来源:发表于2016-12-11 23:18 被阅读739次

介绍

本文是基于我的上一篇文章Angular2 项目实战来写的。就是用那个种子工程来作为脚手架来开发一个工作中的应用(不用的内容全部删掉)。主要介绍服务端Spring REST API的开发,到前端数据显示的整个过程,以及使用webpack的proxy,前后端分离就靠它了,前端使用它代理地址,有两个好处,(1)解决开发时候的跨域问题;(2)改改代理的ip和端口方面以后切换各种环境,如本机环境,开发,测试,预生产等环境。

知识点涵盖

1 Spring REST API开发;

2 webpack-dev-serve proxy

3 angular2 HTTP

4 ngFor

准备

(1)两台电脑,一台做API的服务器,一台做web服务器。(其实在一台上面改下端口就行了)

(2)用种子工程搭建好一个项目;

Spring REST API

api

哈哈哈,这个好简单,我随便写了两句,有兴趣的读者可以持久化到数据库。

我的“服务器” 端口是8080,ip地址如下图

服务器ip地址

配置webpack-dev-server 的proxy代理

webpack-dev-server代理

根据我的服务器ip地址和端口,这里配置target。注意,我们这里要匹配一些使用代理的api,这里配置凡是 /api/** 这样的都会转发到这个http://192.168.0.120:8080上,为什么要这么个匹配?因为我们还有很多资源包括页面,css,图片等都在我们的web服务器上(就是本机上的东西),如果配置成/* 那么一切都去我们的后台服务器去找了,所以这里要理解。注意到了没,我的后端api是/api/table 与之是相应匹配的。

Angular2的HTTP

这个是文章的核心才对,建立model

获取数据的service

dashboard中调用service,service通过HTTP模块发起get请求,请求api,返回的结果赋值给tableData。稍后页面进行遍历。

html使用*ngFor进行便利,两重便利。[hidden]="searchCell&&cell.indexOf(searchCell)<0"是为了配合上面的[(ngModel)]="searchCell" 实现页面的搜索功能,当searchCell输入时,cell包含上面的内容时,显示。

看下结果展示

这正是我们从服务器获取的数据,

搜索功能验证:

输入a,结果age和name都显示,id不显示,正是我们要的结果。

作者寄语:

angular2真是妙不可言,大家多多跟我交流。

相关文章

  • Angular2-项目实战(续)-与服务端通信

    介绍 本文是基于我的上一篇文章Angular2 项目实战来写的。就是用那个种子工程来作为脚手架来开发一个工作中的应...

  • 网络延时测量程序设计

    项目简介 网络延时测量程序项目需求:1.客户端与服务端能够通信,并能测量网络延时(客户端发送信息给服务端,服务端收...

  • 项目实战

    模拟借书系统 socket通信项目实战

  • HTTP协议学习笔记(2)

    客户端与服务端的通信与TCP连接 1. 客户端与服务端的通信过程 当客户端想要跟服务端进行信息交互时,过程如下: ...

  • iOS网络篇-网络基础

    项目中常见的客户端与服务端通信 可通信的内容(即访问服务器资源) 图片,文本,语音,视频,音乐 URL:决定了和谁...

  • [Unity]HTTP POST请求的URL陷阱

    背景 Unity 5.6官方参考手册 2017.1 起因 项目中使用HTTP协议与服务端进行POST通信,传输的数...

  • 序列化及反序列化接口类

    最近在写通信项目的时候遇到了个最主要的问题,用java写客户端的时候,与服务端进行通信的时候不能直接传json或者...

  • ThinkPHP和Workerman整合实现Socket通信De

    因为最近有个项目涉及到Socket通信,于是自己尝试了一下搭建一个服务端WebSocket通信的项目,写个笔记,能...

  • ThinkPHP和Workerman整合实现Socket通信De

    因为最近有个项目涉及到Socket通信,于是自己尝试了一下搭建一个服务端WebSocket通信的项目,写个笔记,能...

  • vue与服务端通信—vue-resource

    Vue.js本身没有提供与服务端通信的借口,但是通过插件的形式实现了基于Ajax、Jsonp等技术的服务端通信。 ...

网友评论

  • ce7333a6f869:您好,请问一下,使用webpack build:prod打包后,如何使用webpack里面的devServer:{proxy:{}}呢
  • sunny_lvy:太感谢了 ,找了一晚上前后端分离调试接口的方法, nginx研究了半天也没弄明白,突然看到你文中的webpack-dev-serve 代理 ,感觉整个世界都明朗了 ,大写的感谢!
  • 14066bbd31d5:看大神文章根本停不下来
    yitalalww:@小螟 谢谢!
  • 西门吹牛々:楼主这个sql query是什么工具
    yitalalww:@飞离 只是一个html
  • c02585b16f8a:天天看你的文章
    yitalalww:@DavidLin1989 :kissing_heart:

本文标题:Angular2-项目实战(续)-与服务端通信

本文链接:https://www.haomeiwen.com/subject/eoopmttx.html