【问题标题】:Refreshing webpage when receiving POST JSON from swift从swift接收POST JSON时刷新网页
【发布时间】:2023-03-14 17:40:01
【问题描述】:

长期阅读,第一次提问。
我有一个在发生条件时发送 JSON 消息的应用程序。我正在尝试让网页在收到 JSON 消息时刷新。
我对 Web 开发非常陌生,并使用了这个很棒的教程来启动 Get Post: https://www.youtube.com/watch?v=aTj0ZLha1zE

当本地文件“data.json”发生更改时,我在这里使用了https://stackoverflow.com/users/88204/james-lawruk 很好的答案来刷新网页。 How to refresh a page whenever my json data file changes

我不知道如何从 swift 触发刷新。 我可能在这里遗漏了一些基本的东西,但我不知道去哪里找。

我的快速代码:

@IBAction func OnPostTapped(_ sender: Any) {
    let parameters = ["username": "@you", "tweet": "HelloWorld"]
    guard let url = URL(string: "http://localhost:8888/data.json") else { return }
    var request = URLRequest(url:url)
    request.httpMethod = "POST"
    request.addValue("application/json", forHTTPHeaderField: "Content-Type")
    guard let httpBody = try? JSONSerialization.data(withJSONObject: parameters, options: []) else {return }
    request.httpBody = httpBody
    let session = URLSession.shared
    session.dataTask(with: request) { (data, response, error) in 
    if let response = response {
         print (response)
    }
    if let data = data {
    do {
         let json = try JSONSerialization.jsonObject(with: data, options: [])
         print (json)
    }catch {
        print (error)
            }
        }
    }.resume()
}

编辑

我应该澄清一下,该应用没有 UIWebView,它只是将 JSON 发送到网页。我正在尝试让网页在用户的浏览器上刷新。

【问题讨论】:

  • 你应该执行yourWebView.reload();
  • 您想要实现的目标没有任何意义?除非您的应用程序控制浏览器,否则无法刷新用户浏览器上的网页。 (在这种情况下为UIWebView)。
  • 您的网络浏览器可能会轮询服务器以获取更新。这与 swift 或与您的应用发布新数据的任何直接链接无关,这将是一个单独的机制。

标签: javascript jquery json swift ajax


【解决方案1】:

我假设你在 UIWebView 中。

如果是这种情况,那么您可以执行webView.reload(); 来刷新页面。

【讨论】:

  • 我已经编辑了问题,而不是使用 UIWebView。感谢您关注我
  • 是的,我不会在 UIWebView 之外这样做。你想要完全控制,但你不会得到它。
【解决方案2】:

原来我试图做的事情是不可能的。 我最终创建了一个应用程序添加数据的 mySql 数据库。 该网页不断查看数据库以查看是否有更改并打印出最新的。 可能有更清洁的方法可以做到这一点,但它正在发挥作用。 如果有人对我的代码感兴趣,请告诉我,我会添加它。 再次感谢您的帮助。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2019-12-30
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多