当我请求api http://demo.tumblr.com/api/read/json时,我得到了带有GDPR信息的html而不是json。在网站上我只需点击“确定”然后我就可以获得json,如何在swift中正确地完成它?
func makeReq(){
let url = "http://demo.tumblr.com/api/read/json"
URLSession.shared.dataTask(with: URL(string: url)!) { data, response, error in
let html = String(data: data!, encoding: String.Encoding.utf8)
self.webView.loadHTMLString(html!, baseURL: nil)
}.resume()
}
答案 0 :(得分:0)
我无法帮助您使用Swift,但要通过GDPR同意页面,您需要发送一个名为' pfg'其内容取决于随请求一起发送的用户代理字符串。这些是我遵循的步骤:
在Chrome中,使用... /更多工具/开发者工具打开调试器,然后... /更多工具/网络条件。在这里,您可以将Chrome发送的用户代理字符串设置为您想要的任何内容。我选择XXXXX是为了简洁。
浏览demo.tumblr.com/read/api并获取同意书。单击“确定”。
使用Chrome cookies.txt扩展程序将网站的Cookie保存到文本文件中。你可以挑选出漫长的“生活”。饼干之后。
让您的程序发送用户代理字符串XXXXX和' pfg'请求的cookie。您可以使用
进行试用 wget -U XXXXX --load-cookies=cookies.txt https://demo.tumblr.com/read/api
Cookie的到期时间设置为12个月。也许你需要在那之前更新它,或者也许不需要更新它。谁知道?