2017-05-08 79 views
0

我正在使用HttpClient获取html字符串,并使用WebView的navigateToString方法来显示此页面。我知道我可以直接使用WebView加载此页面,但在WebView中显示它之前,我需要在该页面上进行一些处理。如何在WebView中加载相对源

所以,我面临一个问题。网页引用标题中的一些css/js文件,但是我看到'href'值是相对路径。然后该页面将无法在WebView中正确显示。

[已更新] 例如,我使用HttpClient请求一个URI(http://example.com),然后我将得到整个html页面字符串。我会对这个html字符串做一些操作。之后,我将使用WebView.NavigateToString(htmlpage)方法显示此页面。但是如果你检查它的头标签,会有一些<link>标签,它的href值是相对路径(/style-a/1.css),而不是绝对路径。然后你会发现HTML页面在WebView中无法正确显示。

有人可以给我一个解决方案/代码示例?

@Pedro Lamas,rene,Barett,moi_meme,Shachaf.Gortler请不要把我的问题搁置。我没有违反任何SO规则。我的问题非常清楚。我认为你这样做,这是因为你不知道如何回答我的问题。没关系。如果你不知道,你可以选择不回答,但请不要搁置。

+1

我不知道这是可能的NavigateToString方法。但是,有NavigateToLocalStreamUri方法,您可以在页面上为每个相关链接提供您自己的解析器。 –

回答

0

您可以设置ms-appx-web://您的链接或脚本标签的地址,并把地址之后,与另外[/]

例如在这种情况下,你可以使用:

<script src="ms-appx-web:///Assets/FolderName/test.js" type="text/javascript"></script> 

,也为链接可以使用:

<link rel="stylesheet" type="text/css" href="ms-appx-web:///style-a/1.css">