web前后台交互了解(asp,php,nodejs)

来源:互联网 发布:数据库系统基础 答案 编辑:程序博客网 时间:2024/06/16 20:38

接着前面来,说完了与移动端交互,再来说说与后台交互。这块东西只能浅尝则止,毕竟太多了,简单介绍下,留个印象。当然如果有错,欢迎指正。

对于前端来说,更多的作用在于展示内容。如果是静态的内容,前端完全可以胜任不需要后台支持,比如显示一张图片,或一段文字。所以后台的作用在于,处理数据,动态返回要显示的内容给前端,前端把接收到的数据显示出来。比如前端需要显示登录用户信息,于是做了个登录的静态页面,用户输入了账号,密码。这个时候需要把数据传输给后台,后台就执行一些代码,比如验证账号密码,再比如验证通过后获取用户的头像,昵称,等级,其他信息等等,返回给前端。前端就可以在页面上显示用户的头像,昵称等信息。

所以涉及到的技术必须有,如何传数据给后台?如何接收后台传过来的数据?

参考网上一个哥们的解说: 前台通过JS请求后台的几种方法

前面4种方式差不多:
1.表单形式,点击表单的提交,触发表单action,然后在后台启动对应执行文件,最后执行内部方法,然后将结果回传
2.通过路径直接访问后台启动对应执行文件,最后执行内部方法,然后将结果回传
3.通过ajax执行异步操作访问后台启动对应执行文件,最后执行内部方法,然后将结果回传
4.使用Service sent Event(暂时不知道是啥,反正有这么个机制)指定后台文件,最后执行内部方法,然后将结果回传

都是指定后台执行文件,然后拿到结果。.action后缀的文件是Structs框架可以识别的,我们不用管,知道后台可以识别这个后缀找到对应文件就行。这里他采用的都是这种相对路径,所以很显然我们写好的前端页面必须和这些后台文件部署在服务器的同一位置,这样才能找到。据了解asp,php都是类似这种方式进行交互的。所以可以直接在提交表单的时候直接访问一个php或者asp文件。

asp代码:

您的姓名:

//下面开始就是asp内容
<%
dim fname
fname=Request.QueryString(“fname”)
If fname<>”” Then
Response.Write(“你好!” & fname & “!
”)
Response.Write(“今天过得怎么样?”)
End If
%>

php类似asp可以嵌入到html

第5种类方式:
5.通过websocket的方式进行交互。这种方式之所以感觉不一样,实在是因为太类似socket了。做过其他平台开发的弟兄们肯定清楚,利用socket与服务端socket建立连接,然后交互。这种不是指定文件,而是建立与后台的连接,类似打电话,电话通了就可以对话了。

而我们说的nodejs与第5种本质类似,但是不是显示使用socket的。nodejs实际上就是编写js脚本,只不过这个脚本运行在服务端,比如
‘use strict’;

// 导入http模块:
var http = require(‘http’);

// 创建http server,并传入回调函数:
var server = http.createServer(function (request, response) {
// 回调函数接收request和response对象,
// 获得HTTP请求的method和url:
console.log(request.method + ‘: ’ + request.url);
// 将HTTP响应200写入response, 同时设置Content-Type: text/html:
response.writeHead(200, {‘Content-Type’: ‘text/html’});
// 将HTTP响应的HTML内容写入response:
response.end(‘

Hello world!

‘);
});

// 让服务器监听8080端口:
server.listen(8080);

这样一段脚本,部署后启动运行,在服务器端监听8080端口,当有访问http://服务器ip:8080的时候,就会响应,此时页面跳转显示“hello world”

当然了还有其他服务器。搭建node服务端环境也简单:
参考http://www.liaoxuefeng.com/wiki/001434446689867b27157e896e74d51a89c25cc8b43bdb3000/001434501245426ad4b91f2b880464ba876a8e3043fc8ef000

大概流程:我是windows64位系统
nodejs官网下载最新版本6.6.0 https://nodejs.org/en/
直接安装木有什么特殊的地方
因为已经add to path 所以可以直接在命令行命令
C:\Users\CD>node -v
v6.6.0

进入方式
C:\Users\CD>node
>
退出方式 两次Ctrl+C

C:\Users\CD>npm -v
3.10.3

此时node运行环境ok,代表着可以在机器上运行nodejs服务端程序了。
就刚才那段helloworld,此时在命令行中运行 node helloworld.js即可启动,然后在打开浏览器访问:http://localhost:8080就粗来啦!

接着下去用vs code做开发环境,主要的好处是有提示和可断点一步步调试,安装就不说了。
安装好打开helloworld.js

这里写图片描述

1,2两步后会发现弹出这个
这里写图片描述
明显要选择nodejs

然后显示出了一个json让你进行启动配置用的,于是配置一下你要启动的js
这里写图片描述
对,就是将app.js替换成你的js相对路径

然后再执行一遍2就可以看到第一张图,启动服务了,再次去浏览器上看看http://localhost:8080也是可以的(如果80被占用就换一个)

0 0
原创粉丝点击