「cookie」表示客戶端和服務器之間的共享狀態。如前所述,設置cookie值的方法是使用Set-Cookie
標題。傳遞已經設置的值的方式是使用Cookie
標題。
Cookie通常與網絡瀏覽器相關聯,作爲跟蹤和識別現有用戶的工具。我從來沒有見過用於服務器到服務器通信的cookie。
Authorization
標頭適合傳遞編碼或加密的字符串。
因此,例如,你可能會看到:
Authorization: "Basic dXNlcm5hbWU6cGFzc3dvcmQ="
在這種情況下,該值是編碼字符串中的Base64「用戶名:密碼」
我就不會擔心什麼頭太多了你用。您可以自己組裝自己的x-my-awesome-auth-header:
它通常以「x」作爲自定義標題的前綴。
要考慮的重要事情是標題值包含的內容。如果您通過普通的http
進行通信,請確保您已加密。
也可以考慮使用開源標準,通過加密的數據,如JWT
編輯:要回答你的問題,是沒有任何理由發送的cookie是更好?當涉及到服務器到服務器的通信時,使用Cookies實際上更糟糕,因爲這些服務器必須與其他服務器保持狀態。例如。當A與B交談時,A必須記住B再次說話時所說的內容。通常情況下,服務器到服務器之間的通信是無狀態的,這意味着您可以在每次事務之後丟棄與授權和許可有關的數據。每筆交易都必須經過完整的授權和許可解決流程。它更容易編碼,並且只要通過加密保護您的安全,就不會受到任何處罰