服务器和客户端(浏览器或其他)之间的操作流程,Flask结合数据库和WSGI与WEB服务器作为服务端,CHJ作为客户端,通过HTTP进行数据交互。
HTTP请求:
http://(指定协议)helloflask.com(服务器地址(域名))/hello?name=Grey(资源路径)
报文(网页上F12):
浏览器与服务器之间交互的数据叫报文 (message),
请求时浏览器发送的数据叫请求报文(request message),
而服务器返回的数据叫响应报文(response message)。
Request对象获取请求URL:
当我们从request对象的类 型为MutliDict或ImmutableMultiDict的属性(比如files、form、args)中 直接使用键作为索引获取数据时(比如request.args['name']),如果没有 对应的键,那么会返回HTTP 400错误响应(Bad Request,表示请求无 效),而不是抛出KeyError异常,如图2-4所示。为了避免这个错误,我 们应该使用get()方法获取数据,如果没有对应的值则返回None; get()方法的第二个参数可以设置默认值,比如 requset.args.get('name','Human')。