編輯:關於Android編程
眾所周知,當你點擊一個超鏈接進行跳轉時,WebView會自動將當前地址作為Referer(引薦)發給服務器,因此很多服務器端程序通過是否包含referer來控制盜鏈,所以有些時候,直接輸入一個網絡地址,可能有問題,那麼怎麼解決盜鏈控制問題呢,其實在webview加載時加入一個referer就可以了,如何添加呢?
從Android 2.2 (也就是API 8)開始,WebView新增加了一個接口方法,就是為了便於我們加載網頁時又想發送其他的HTTP頭信息的。
復制代碼 代碼如下:
public void loadUrl (String url, Map<String, String> additionalHttpHeaders)
Added in API level 8
Loads the given URL with the specified additional HTTP headers.
Parameters
url the URL of the resource to load
additionalHttpHeaders the additional headers to be used in the HTTP request for this URL, specified as a map from name to value. Note that if this map contains any of the headers that are set by default by this WebView, such as those controlling caching, accept types or the User-Agent, their values may be overriden by this WebView's defaults.
以下是一個簡單的demo,來展示以下如何使用。
復制代碼 代碼如下:
public void testLoadURLWithHTTPHeaders() {
final String url = "http://jb51.net";
WebView webView = new WebView(getActivity());
Map<String,String> extraHeaders = new HashMap<String, String>();
extraHeaders.put("Referer", "http://www.google.com");
webView.loadUrl(url, extraHeaders);
}
同樣上面也可以應用到UserAgent等其他HTTP頭信息。
背景:其實,關於實現機器人聊天,是偶然的情況下的,公司需要做一個ios版的機器人,用於自動購買東西,然後ios就研發了一個,我覺得這種機器人挺好玩的,想明白到底怎麼實現,
2014新年第一天,全面升級安卓開發環境。主要做兩件事:1. 把IDE從eclipse轉到Android Studio(又去掉了一個與IBM Rational的聯系,多少
前言搞安卓的開發應該知道開發好的apk都是需要上傳到應用市場給用戶下載的,當然有些公司的產品是不用上傳到應用市場的(比如我們公司放七牛雲)但是也需要放在雲上面給用戶下載。
前言最近項目忙,然後呢很久沒有更新博客了,react-native也是沒有時間學習,然後項目裡面用到了數據持久化(數據存儲),Android系統中主要提供了三種數據持久化