UIWebView 中的附件

发布于 2024-11-08 19:43:43 字数 191 浏览 1 评论 0原文

我必须在 UIWebView 上附加一些文件。为了获取文件的内容,我必须执行 HTTP GET 请求。我知道如何获取文件内容(可以是任何文件、二进制数据等),但我不知道如何在 UIWebView 上创建附件链接,该链接可以保存 http响应数据,或http请求的uri,以便我在单击附件链接后显示内容。有什么想法吗?

I have to attach some files on a UIWebView. In order to get the content of the files, I'll have to do an HTTP GET request. I know how to get the file content (it can be any file, binary data, etc), but I can't find out how to create an attachment link on the UIWebView which would either save the http response data, or the uri for the http request, so that I show the content after clicking on the attachment link. Any ideas?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(1

我不会写诗 2024-11-15 19:43:43

如果我正确理解你的问题,你会想要:

  1. 通过发送来下载一些文件
    输出 HTTP GET 请求并存储
    它们在本地(在应用程序的文档中
    文件夹);

  2. 显示一个带有链接的 UIWebView
    下载的文档;

您已经知道如何处理(1)了。

如果这是正确的,对于 (2),您可以创建一个 htmlString

<html><head>...</head><body>...
<a href="attachment1.ext">link to 1st doc</a>
....
<a href="attachment2.ext">link to nth doc</a>
...
</body></html>

然后初始化 UIWebView 并通过执行以下命令将 htmlString 加载到其中:

[_label loadHTMLString:htmlString baseURL:[NSURL fileURLWithPath:basePath]];

其中 basePath 是存储下载文档的文件夹的路径。
设置 basePath 值将确保您在 html 中指定的 href 能够找到本地存储的文件。
basePath 可以是您应用程序的文档文件夹或您在本地存储文件时选择的任何文件夹,我想您知道它是什么。

(在上面的 html 中,将 attachment*.ext 替换为实际的文件名)

如果我没有正确理解您的工作流程,请详细说明。

if I understand correctly your question, you would like:

  1. to download some files by sending
    out HTTP GET requests and storing
    them locally (in the app's document
    folder);

  2. show a UIWebView with links to
    the downloaded documents;

whereby you already know how to deal with (1).

if this is correct, for (2), you can create an htmlString:

<html><head>...</head><body>...
<a href="attachment1.ext">link to 1st doc</a>
....
<a href="attachment2.ext">link to nth doc</a>
...
</body></html>

then initialize a UIWebView and load the htmlString into it by executing:

[_label loadHTMLString:htmlString baseURL:[NSURL fileURLWithPath:basePath]];

where basePath is the path to the folder where you have stored the documents you downloaded.
Setting the basePath value will ensure that the hrefs you specified in the html will find your locally stored files.
basePath could be your app's Documents folder or whatever you chose it to be when storing locally the files, I suppose you know what it is.

(in the html above, replace attachment*.ext with the actual filenames)

If I haven't correctly understood your workflow, please elaborate more.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文