python全棧02-----url_for,HTTP的請求方法
阿新 • • 發佈:2020-10-14
構造url(url_for)
- 一般我們通過一個URL就可以執行到某個函式。
- 那麼我們知道一個函式如何去獲取這個URL呢
- url_for函式可以幫我們實現這個功能
- url_for()函式會接受兩個及以上的引數,他接收函式名作為第一個引數
- 如果還出現其他引數,則會新增到URL的後面左右查詢引數。
- 通過構建URL的方式而選擇直接在程式碼中拼URL的原因有兩點
- 1.將來如果修改了URL,但沒有修改該URL對應的函式名,就不用到處去替換URL了。
- 2.url_for()函式會轉義一些特殊字元和uncode字串,這些事情url_for會自動的幫我們搞定
在構造的URL的末尾後加上/,有斜槓和沒有斜槓是兩個不同的URL
/article/1?asd=2&page=200
上面程式碼就是url_for()函式獲取的URL
.url_for()函式會轉一一些特殊字元和uncode字串
斜槓被轉義為%2F
指定HTTP的請求方法
- 在@app.route()中可以傳入一個關鍵字引數methods來指定本方法支援的HTTP方法,預設情況下,只能是同GET請求
頁面跳轉和重定向
- 重定向分為永久性和暫時性重定向,在頁面上體現的操作就是瀏覽器會從一個頁面自動跳轉到另外一個頁面。
- 永久性重定向:http的狀態碼是301,多用於舊網址被廢棄了要轉到一個新的網址確保使用者的訪問,最經典的就是京東網站,
- 你輸入www.jingdong.com的時候,會被重定向到www.jd.com,因為jingdong. com這個網址已經被廢棄了,被改成jd.com所以這種搶礦下應該用永久重定向
- 暫時性重定向:http的狀態碼是302,表示頁面暫時性跳轉。
- 比如訪問一個需要許可權的網址,如果當前使用者沒有登陸,應該重定向到登陸頁面,這種情況下,應該用暫時性重定向
如果我們訪問那麼會直接跳轉到這就是重定向