因此,我正在編寫我的第一個應用程序,並且有一個關於在UIWebView中阻止其他域的快速問題。我想限制導航到我的網站,而我的合作伙伴網站只。所以,如果在我的網站上碰巧有鏈接到Google的鏈接,我想要彈出消息併發出並說「你不能去那裏!」或者其他的東西。我不知道如何去做這件事。我以前從來沒有玩過UIWebView,而且對於編程來說,這些都很新穎。 任何幫助都非常感謝,謝謝!iOS:阻止UIWebView中的其他域
1
A
回答
7
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
{
NSString *host = [request.URL host];
if ([host isEqualToString:"oralb.com"] || [host isEqualToString:"other.com"]) {
// Add any of your own domains in the above line
return YES;
}
return NO;
}
2
您需要讓您的控制器類成爲Web視圖的代表。然後實現在控制器此方法:
- (BOOL)webView:(UIWebView *)webView shouldStartLoadWithRequest:(NSURLRequest *)request navigationType:(UIWebViewNavigationType)navigationType
在這種方法中,你可以檢查request
,看看它URL
是可以接受的。如果是,return YES
,如果沒有,則顯示您的警報和return NO
。
要測試域名,您可以從request
的URL
請求host
。
相關問題
- 1. 如何阻止其他域名指向我的域名?
- 2. Analytics.js阻止其他腳本
- 3. 阻止UIWebView警報
- 4. 阻止來自其他域的腳本的緩存
- 5. 什麼阻止我使用$ .ajax加載其他域的html?
- 6. 防止.stop()阻止其他動畫
- 7. 如何在uiwebview中阻止網站的所有圖片ios?
- 8. 阻止Google(和其他搜索引擎)從抓取域名
- 9. 通配符子域名,阻止所有其他
- 10. 如何阻止其他網站發送跨域ajax請求?
- 11. 按照域名在UIWebView中阻止圖片
- 12. 如何阻止Spring MVC阻止所有其他Servlet?
- 13. 如何檢測在Chrome中是否阻止其他域的彈出窗口?
- 14. Primefaces selectOneMenu用於阻止其他方法
- 15. 去例程阻止其他人
- 16. Julia - Readall阻止其他任務
- 17. ReentrantLock.lock()不會阻止其他線程
- 18. html5 websockets on sharedhosting阻止其他端口
- 19. 包括阻止顯示其他佈局
- 20. JAAD阻止其他提供者工作
- 21. Ajax呼叫阻止其他javascript代碼
- 22. ActiveMQ OnMessage()方法阻止其他線程
- 23. 如何阻止所有其他操作
- 24. jquery函數阻止其他人開火
- 25. 阻止Div進入其他Div
- 26. 阻止其他應用程序
- 27. 阻止訪問其他用戶
- 28. 阻止DIV與其他DIV重疊(CSS)
- 29. file_get_contents/curl阻止其他客戶端
- 30. 阻止其他聲音/音樂
BaseURL ==「oralb.com」不是定義字符串或比較字符串的有效方法。你應該使用比較:或isEqualToString:或hasPrefix: – Wain
@Wain - 謝謝。錯過了。 – bbarnhart
在主機設置完成後立即添加斷點,然後逐步完成。確保主機是正確的價值。您可能需要使用除主機以外的其他方法。 [Link](http://developer.apple.com/library/ios/#documentation/Cocoa/Reference/Foundation/Classes/NSURL_Class/Reference/Reference.html#//apple_ref/c/data/NSURLIsExcludedFromBackupKey) – bbarnhart