2016-04-02 50 views
2

我有一個html頁面,下面的代碼。當用戶提交表單爲什麼我的瀏覽器不發送任何引用者?

<form method="POST" action="https://formspree.io/email"> 
    <input type="submit" value="SEND"/> 
    </form> 

我的瀏覽器中不包括http請求引薦頭字段。爲什麼不呢?

+0

首先,請確保您通過Web服務器打開此頁面,Formspree不能在作爲HTML文件瀏覽的頁面中工作,作爲Formspree統計信息。你在本地打開這個HTML嗎? – statosdotcom

+0

我想你會在這裏找到你的方式:http://stackoverflow.com/a/266013/5885018 – statosdotcom

回答

0
  1. 您正在測試您的網站,方法是在瀏覽器中將其作爲計算機文件系統中的靜態HTML文件進行打開。在這種情況下,其URL不會以http://或https://開頭。這是行不通的,因爲瀏覽器不會將這些頁面視爲正常的網頁資源,因此當您提交表單時,它們不會自動發送「Referer」標題。 Formspree需要該標題才能起作用。如果您只是從本地Web服務器打開HTML文件作爲Web資源,就可以解決這個問題。如果您使用的是Mac或Linux,只需鍵入python -m SimpleHTTPServer 8000或您的HTML文件目錄並在瀏覽器上訪問http://localhost:8000。如果您在Windows上,請嘗試安裝以下超級簡單網絡服務器之一:適用於Chrome的Web服務器,thttpd或Quickshare。

  2. 您正在使用舊的Safari版本,Safari移動版或其他一些非Chrome,Firefox或Edge版本的瀏覽器。在這種情況下,您可能會成爲我們在Formspree上使用的舊HSTS策略的受害者,該策略不允許網站將內容發佈到非https版本的Formspree。在這種情況下,請將您的表單的action =屬性更改爲https://formspree.io/

0

首先使用formspree的atributtes註明:

<form action="https://formspree.io/[email protected]" 
 
     method="POST"> 
 
    <input type="text" name="name"> 
 
    <input type="email" name="_replyto"> 
 
    <input type="submit" value="Send"> 
 
</form>

和第二:也許你在其他網站嘗試過的形式(如formspree網站),所以你必須重新設置它在formspree網站上,然後直接在你的網站上嘗試,所以你將不得不再次確認。

希望它爲你工作...

0

由於statosdotcom評論說,這個問題發生,因爲我是在本地打開我的網頁。

2

我通過將<meta name="referrer" content="origin">添加到我的HTML頁面的<head>部分來解決此問題。

相關問題