2016-02-28 49 views
0

我想發郵件給客戶提供HTML內容,我想送他鏈接類似的這樣:發送鏈接,以便用POST電子郵件參數

<a href="file.php?user_id=10"> some text </a> 

我認爲,這是壞的方式如何定義這個與GET參數user_id鏈接。屬性user_id是敏感信息,所以我想設置爲POST參數。怎麼做?

謝謝。

+0

你能否提供更多的代碼/ html(例如表格) – DTH

回答

1

你不能用標籤。一個標籤只爲歌廳,你需要使用的XMLHttpRequest(在電子郵件中不可用)或表單(這不是所有客戶端渲染正確)

<form action="file.php" method="post"> 
    <input type="hidden" name="user_id" value="10"> 
    <input type="submit" value="Submit"> 
</form> 

話雖這麼說,用戶ID通常是不敏感信息

+1

User_id一般不是敏感信息。但是,此文件(file.php?user_id = 10)執行敏感操作,只能由管理員執行。 – Matej

+0

@Matej當然你在某個時候有認證,但?如果你仍然要求他們登錄,那麼如果有人得到這個鏈接並不重要 –

+0

@Matej即使你確實想用POST來發送數據,也仍然有可能有人在客戶端創建一個表單這是否與他們希望的任何ID –

2

我認爲,如何用GET參數user_id定義這個鏈接是不好的方法。

不是。

屬性user_id是敏感信息

不,事實並非如此。即使用戶ID是最敏感的,人們仍然可以猜測出隨機的。

所以我想設置像POST參數。怎麼做?

你不行。

鏈接無法發出POST請求。

表單可以,但許多電子郵件客戶端不支持HTML格式的電子郵件中的表單,因此使用它們是不可取的。

XMLHttpRequest可以,但沒有電子郵件客戶端可以讓您在電子郵件中嵌入工作JavaScript。

如果您確實提出了POST請求,那麼您將隱藏信息的唯一人將是站在用戶後面的人,並盯着他們的地址欄。


如果需要與一次性授權令牌添加安全層則認證所述用戶(例如用戶名和密碼或OAuth的)和/或伴隨的數據。