• 关于前后端交互整理


    前后端交互流程

    前端发送请求-->后端接收请求->后端发送响应->前端接受响应

    通常情况下的前端和后端的语言是不同的,比如前端使用JavaScript(TypeScript等),后端使用Java(GoLang等)。

    编程语言和人类语言是类似的,不同的语言是无法交流的。

    这时候就需要中间沟通的信使——HTTP协议。

    HTTP使得前后端交互得以实现,前后端只需要按照HTTP的格式进行处理数据即可。

    HTTP协议

    HTTP报文的包含了两个部分:请求和响应。

    HTTP协议 - RFC2616

    请求报文

    包含请求头、请求体。

    Request Header Fields

    示例:

    GET / HTTP/1.1
    Host: www.google.com
    

    参数:

    Accept
    Accept-Charset
    Accept-Encoding
    Accept-Language
    Authorization
    Expect
    From
    Host
    If-Match
    If-Modified-Since
    If-None-Match
    If-Range
    If-Unmodified-Since
    Max-Forwards
    Proxy-Authorization
    Range
    Referer
    TE
    User-Agent

    响应报文

    响应包含了响应头响应体。

    Request Header Fields

    示例:

    HTTP/1.1 200 OK
    Content-Length: 3059
    Server: GWS/2.0
    Date: Sat, 11 Jan 2003 02:44:04 GMT
    Content-Type: text/html
    Cache-control: private
    Set-Cookie: PREF=ID=73d4aef52e57bae9:TM=1042253044:LM=1042253044:S=SMCc_HRPCQiqy
    X9j; expires=Sun, 17-Jan-2038 19:14:07 GMT; path=/; domain=.google.com
    Connection: keep-alive
    

    参数:

    Accept-Ranges
    Age
    ETag
    Location
    Proxy-Authenticate
    Retry-After
    Server
    Vary
    WWW-Authenticate

    Header Fields

    状态码

    状态码 具体含义 常见状态
    1xx 提示信息,表示目前是协议处理的中间状态;
    2xx 成功,报文已经收到并被正确处理; 200、204、206
    3xx 重定向,资源位置发生变动,需要客户端重新发送请求; 301、302、304
    4xx 客户端错误,请求报文有误,服务器无法处理; 400、403、404
    5xx 服务器错误,服务器在处理请求时内部发生了错误。 500、501、502、503

    http状态码 - wiki百科

    前端

    语言

    JavaScript、TypeScript等。

    TypeScript是JavaScript超集,在JavaScript基础上增加了面向对象与静态类型,使项目便于维护。

    axios是一款优秀的js库,用于实现AJAX。

    具有相同功能的还有:XMLHttpRequest、Fetch等。

    调试工具

    Browser console,请学会使用浏览器的控制台。

    后端

    语言

    Java、Python、GoLang等,Java使用较多。

    框架

    Spring Framework是一款优秀的框架,基于Spring开发的针对web的框架。

  • 相关阅读:
    HTML5边玩边学(2)
    Get Mac NetBIOS
    NetBios协议详解及网上邻居工作原理
    DXperience Universal 10.1.6
    HTML5边玩边学(1)
    《UML和模式应用》读书笔记(二)
    static instance examples
    自己写的虚拟主机管理系统..和大家分享
    一个不错的net的User Interface Components
    Infragistics系列控件
  • 原文地址:https://www.cnblogs.com/arrayblog/p/14179474.html
Copyright © 2020-2023  润新知