2016-01-22 76 views
0

當設置引薦我目前使用這個二:如何加載的WebView

mywebview.setUrl(the_url); 

加載URL。

相反,我可以像在http頭中包含referer一樣加載它嗎?

編輯:原因是鏈接到的網站應該能夠看到流量來自哪裏,即使URL被加載到不同的網頁視圖比包含鏈接的網頁。 (我使用了多個網頁視圖創建一個標籤UI)。

編輯: Xcode的等效似乎是這樣的,雖然我不知道這是否也是它加載到一個新的網頁流量:Specifying HTTP referer in embedded UIWebView

+0

你的問題不清楚。你想發送http頭到webview以及你傳遞的url? – developer82

+0

是的。鏈接到的網站應該能夠看到流量來自我的網站。不同的網址在不同的網頁瀏覽中打開,這就是爲什麼它不僅僅是一個web視圖中的正常鏈接(它自然會通過引用者)。 – user984003

+0

並且您在請求標頭中傳遞了這些數據而不是查詢字符串? – developer82

回答

1

它出現爲WebViews定義自定義標頭尚不可用。您可以觀看門票TIMOB-17467查看更新。

看來你需要一個本地模塊。

快速檢查適用於iOS ..

也許你可以擴展這些。

的Android似乎更容易實現,(但仍鈦SDK不可用),通過extraHeaders:瞭解更多:https://stackoverflow.com/a/5342527

+0

標記爲正確,但我還沒有機會嘗試此操作。 – user984003

0

我已經看過了Android的web視圖頭(PHP getallheaders()),並有x-requested-with: com.app.id

因此,在您的頁面中,您可以檢查該值,並至少知道應用程序使用包標識符訪問了該值。否則,您可以將一個get參數附加到url ?mobile並對此進行計數。

我試圖添加一個補丁到Android SDK並添加一個setHeader()方法。使用loadURL()調用是: https://github.com/appcelerator/titanium_mobile/blob/bc85170157d3bebc5de1d61a9fe6e34bce84a8c9/android/modules/ui/src/java/ti/modules/titanium/ui/widget/webview/TiUIWebView.java#L462

如果根據@tzmartin

extraHeaders.put("Referer", "http://www.referer.tld/login.html"); 
getWebView().loadUrl(finalUrl, extraHeaders); 

那麼它已經工作,但它的硬編碼更改。