苹果推送通知

发布于 2024-10-20 08:37:18 字数 399 浏览 3 评论 0原文

我正在构建一个应用程序,每 15 分钟检查一次站点是否有更改。当应用程序打开时,我可以在应用程序中很好地完成此操作。但是,当应用程序在后台运行时,我该如何执行此操作呢?

问题是我认为我无法使用推送通知服务。正在检查的站点上的页面要求用户登录该站点。因为每个应用程序都有一个 cookie jar,所以用户一开始通过 UIWebView 登录网站,然后登录后,使用 NSURLConnection 每 15 分钟轮询一次网站,并通过 cookie 接收登录用户的数据在 web 视图中登录时创建。我不相信有办法在服务器上为许多不同的用户执行此操作?如果有的话,用户的网站用户名和密码是否必须存储在我的推送服务器上,这是一个很大的问题。

那么我可以使用任务完成功能,或者是否可以访问仅在服务器提供正确的 cookie 时才显示正确的页面,然后使用推送通知。

I'm building an app that checks as site every 15 minutes for changes. I can do this fine in the app, when it's open. But how do I go about doing this while the app is in the background?

The trouble is I don't think I can use the Push Notification Service. The page on the site which is being checked, requires the user to be logged into the site. Because there is a cookie jar for each app, the user logs into the site through a UIWebView at the beginning and then once logged in, the site is polled every 15 minutes using NSURLConnection and receives the data for the logged in user because of the cookies created at login in the webview. I don't believe there is a way to do this on a server for many different users? And if there was wouldn't the user's site username and password have to be stored on my push server which is a huge no.

So can I use task completion, or is it possible to access a page that only appears correct when the correct cookies are present from a server and then use push notification.

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

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

发布评论

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

评论(1

掐死时间 2024-10-27 08:37:18

不幸的是,无法从 UIWebview 获取 cookie。并且任务后台完成只能运行10分钟。

我不确定您要尝试访问哪种网站,但如果您可以使用 NSURLConnection 复制登录,则可以使用 NSHTTPCookie 检索 cookie。然后将 cookie 数据存储在您的服务器上,然后使用“Set-Cookie”标头从服务器访问网站以检查内容是否发生更改。

当然,这取决于 cookie 的持续时间(过期)。

Unfortunately there is no way to get the cookie from a UIWebview. And task background completion can only run for 10 minutes.

I'm not sure what kind of website you are trying to access, but if you can replicate the login using a NSURLConnection you can retrieve the cookie using NSHTTPCookie. Then store the cookie data on your server and then access the web site from the server with the "Set-Cookie" header to check the content for changes.

This, of course, depends on how long the cookie lasts (expires).

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