前端调用后端的方法(基于restful接口的mvc架构)
1.前端调用后台:
建议用你熟悉的一门服务端程序,例如ASP,PHP,JSP,C#这些都可以,然后把需要的数据从数据库中获得,回传给客户端浏览器(其实一般就是写到HTML中,或者生成XML文件)然后在用JS获得。
2.js只是前端的语言,它还没有访问数据库的能力。不过它可以向某个URL发送请求,并获得返回的数据。这个会用到Ajax技术。
用AJAX,页面不刷新,只提交字符串到后台导入数据库
通过纯AngularJS+REST API构建Web是否可行?
在构建Web系统的时候,可不可以采用纯AngularJS和全部REST API来进行构建?也就是说Web前端只有Html、CSS、JS(AngularJS、JQuery)的静态资源,没有任何服务器端生成的内容。同数据的交互完全采用REST API的方式进行。
如果可行,还有几个问题:
1、REST API是无状态的,如何对用户进行身份验证?
2、Web前端的静态资源是否存在其他风险,例如可被用户下载等。
3、如何保证REST API只能响应合法前端资源的请求,也就是不能让用户手动来去调用。
1. REST 本身从来没有自己的认证方式,你想怎么认证就怎么认证。
可以参考 Basic Auth、OAuth、OAuth 2.0 等等认证方式。
认证完了给一个 Token 就是了。
2. 前端静态资源(HTML/JavaScript/CSS)就是本来用户可自由下载的,和 RESTful 没有任何关系。非静态文件一样走的后端路由自己做好校验就是。
3. 通过 HTTP 协议来约束没有可能,任何基于 HTTP 或 HTTPS 的网站,管你服务器还是浏览器渲染如何认证爬虫想怎么爬怎么爬,理论上没有可能从根本上区分是爬虫还是用户操作,是不是 RESTful 都一样,顶多增加点难度比如验证码之类。要完全禁止爬虫只有和网页完全无关的方式,比如银行的支付控件,U盾等等。
编写一个 JavaScript 的 REST客户端
http://www.oschina.net/translate/writing-a-javascript-rest-client
使用python创建符合RESTful架构的web服务
js调用restful的web服务
基于restful接口的mvc架构
http://www.lovelucy.info/mvc-in-front-end-web-app-development-based-on-restful-api-design.html
前端调用后端的方法(基于restful接口的mvc架构)的更多相关文章
- ASP.Net:Javascript 通过PageMethods 调用后端WebMethod方法 + 多线程数据处理 示例
ASP.Net:Javascript 通过PageMethods 调用后端WebMethod方法 + 多线程数据处理 示例 2012年04月27日 16:59:16 奋斗的小壁虎 阅读数:4500 ...
- springboot结合jwt实现基于restful接口的身份认证
基于restful接口的身份认证,可以采用jwt的方式实现,想了解jwt,可以查询相关资料,这里不做介绍~ 下面直接看如何实现 1.首先添加jwt的jar包,pom.xml中添加依赖包: <de ...
- 设计模式之美学习(九):业务开发常用的基于贫血模型的MVC架构违背OOP吗?
我们都知道,很多业务系统都是基于 MVC 三层架构来开发的.实际上,更确切点讲,这是一种基于贫血模型的 MVC 三层架构开发模式. 虽然这种开发模式已经成为标准的 Web 项目的开发模式,但它却违反了 ...
- Nginx解决前端调用后端接口跨域问题
1.项目中遇到的问题描述: 前端调用zuul统一网关服务接口,请求状态码200,但是无返回数据. 浏览器控制台报错信息:No Access-Control-Allow-Origin header i ...
- 随机获得MySQL数据库中100条数据方法 驾照题库项目 MVC架构 biz业务层的实现类 根据考试类型rand或order通过dao数据访问层接口得到数据库中100或全部数据
package com.swift.jztk.biz; import java.util.Collections; import java.util.Comparator; import java.u ...
- 前端调用后端接口下载excel文件的几种方式
今天有一个导出相应数据为excel表的需求.后端的接口返回一个数据流,一开始我用axios(ajax类库)调用接口,返回成功状态200,但是!但是浏览器没有自动下载excel表,当时觉得可能是ajax ...
- 【Python】【Flask】前端调用后端方法返回页面
后端代码: @app.route("/test",methods=['POST','GET']) def test(): return "我是测试的" 前端代码 ...
- 【Python】【Flask】前端调用后端方法
后端代码: @app.route("/test",methods=['POST','GET']) def test(): return "我是测试的" 前端代码 ...
- 前端调用后端接口返回200(成功状态码),后端有返回,但是控制台Network Response为空,没展示任何信息
解决方法: 1.在js里面debugger,可以看到后台是否有返回数据. 2.直接console.log(),直接把返回值打印出来,查看返回的数据格式,方便前端进行数据的处理. PS:因为后端返回的数 ...
随机推荐
- v$Session详解
从Oracle10gR1开始,Oracle在V$SESSION中增加关于等待事件的字段,实际上也就是把原来V$SESSION_WAIT视图中的所有字段全部整合到了V$SESSION视图中,开始的时候我 ...
- Cookie文件格式解析
原文参考:http://blog.csdn.net/lixianlin/article/details/2738229 1.Cookie文件的实质 Cookie实际上是Web服务端与客户端(典型的是浏 ...
- Python学习笔记(二)——高级特性
知识点 切片 切片 取一个list或tuple的部分元素. 原理:调用__getitem__,__setitem__,__delitem__和slice函数. 根据官方的帮助文档(https://do ...
- js 停止事件冒泡 阻止浏览器的默认行为
在前端开发工作中,由于浏览器兼容性等问题,我们会经常用到“停止事件冒泡”和“阻止浏览器默认行为”. 浏览器默认行为: 在form中按回车键就会提交表单:单击鼠标右键就会弹出context menu. ...
- 【View】之【SimpleWaveView】可多色可刷新的加速球、进度球【demo】
当前版本:SimpleWaveView_v1.0.20140618 先看效果图,这个加速球是动态的,并且当调用了myView.setRefresh(0.8F);方法后可以从当前值动态降到0再升到80% ...
- 静默安装oracle 11g,环境预检查时报错,SEVERE: [FATAL] PRVF-0002 : 无法检索本地节点名
环境描述: 操作系统:Redhat 6.6_x64 oracle:11.2.0.4 x64 问题描述: 今天在安装oracle 11g的数据库,在进行预安装环境检查的时候,报下面的错误: [oracl ...
- POJ 1180 Batch Scheduling
BTW: 刚在图书馆借了本算法艺术与信息学竞赛. 我多次有买这本书的冲动, 但每次在试看之后就放弃了, 倒不是因为书太难, 而是写的实在是太差. 大家对这本书的评价很高, 我觉得多是因为书的内容, 而 ...
- swift--设置app图标和启动页面
1,如下图:
- lodash(二)对象+循环遍历+排序
前言: lodash(一)中只是研究了array中的多种方法,接下来就是经常用到的循环遍历问题 过程: 1._.forEach(collection, [iteratee=_.identity], [ ...
- C++中的枚举变量
至从C语言开始enum类型就被作为用户自定义分类有限集合常量的方法被引入到了语言当中,而且一度成为C++中定义编译期常量的唯一方法(后来在类中引入了静态整型常量).根据上面对enum类型的描述,有以下 ...