获取icloud Web服务端点以获取数据 [英] get icloud web service endpoints to fetch data

查看:90
本文介绍了获取icloud Web服务端点以获取数据的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我的问题可能看起来很愚蠢,但是我在Google上进行过多搜索后仍未提出任何疑问.

My question may look silly but I am asking this after too much search on Google, yet not have any clue.

我正在使用iCloud Web服务.为此,我已将此Python代码转换为PHP. https://github.com/picklepete/pyicloud

I am using iCloud web services. For that I have converted this Python code to PHP. https://github.com/picklepete/pyicloud

到目前为止,一切正常.使用icloud用户名,密码进行身份验证时,我将获得Web服务URL列表作为响应的一部分.现在,例如,要使用联系人" Web服务,我需要使用联系人" Web服务URL,并在该URL中添加一部分以获取联系人.

Up to this, everything is working good. When authenticate using icloud username,password I am getting a list of web service URLs as part of response. Now for example to use Contacts web service, I need to use Contact web service URL and add a part to that URL to fetch contacts.

https://p45-contactsws.icloud.com:443/co/startup 参数.

Web服务URL https://p45-contactsws.icloud.com:443 在进行身份验证时已得到响应.但是后面的部分,"co/startup"在python代码中.我不知道他们是怎么找到那部分的.因此,对于Python代码中提供的某些服务,它们运行良好.但我想使用其他一些服务,例如 https://p45-settingsws.icloud.com:443 https://p45-keyvalueservice.icloud.com:443 等,当我尝试向其他服务发送带有正确参数的请求时,出现诸如404错误或未授权访问之类的错误.因此,我认为必须像联系人一样向其中添加一些URL部分.如果有人知道如何或在哪里可以获得正确的URL部分,我将非常感激.

The webservice URL https://p45-contactsws.icloud.com:443 is coming in response while authenticating. But the later part, 'co/startup' is there in the python code. I don't know how they found that part. So for some services which is there in Python code, they are working good. But I want to use few other service like https://p45-settingsws.icloud.com:443, https://p45-keyvalueservice.icloud.com:443 etc. and when I try to send request with correct parameters to this other services, I am getting errors like 404 not found or unauthorized access. So I believe that some URL part must be added to this just like contacts. If someone knows how or where can I get correct URL part, I will be really thankful.

提前感谢所有人花时间阅读/回答我的问题.

Thanks to all in advance for their time reading/answering my question.

推荐答案

恐怕这些API端点似乎没有官方来源,因为它们似乎是通过嗅探网络调用而不是适当的方式发现的苹果公司提供的指南.例如,来自法医工具公司的此演示文稿来自2013年,内容涵盖一些相关的端点.请注意,iOS仍为版本5和更高版本.然后是6(相对于当前的v9.3).

I am afraid there doesn't seem to be an official source for these API endpoints, since they seem to be discovered through sniffing the network calls rather than a proper guide from Apple. For example, this presentation, which comes from a forensic tools company, is from 2013 and covers some of the relevant endpoints. Note that iOS was still at versions 5 & 6 then (vs. the current v9.3).

网络上的所有其他代码示例基本上都使用最初在2012-2013年观察到的同一组API端点.(这是来自另一个python模块的摘录,其中包含其他网址使用.)但是,它们几乎都是以彼此为源.

All other code samples on the net basically are using the same set of API endpoints that were originally observed in 2012-2013. (Here's a snippet from another python module with additional URLs you may use.) However, all of them pretty much point to each other as the source.

如果您想采用其他方法,Apple现在会推广 CloudKit和CloudKit JS 适用于使用iCloud数据的已注册应用程序的解决方案.

If you'd like to pursue a different path, Apple now promotes the CloudKit and CloudKit JS solutions for registered apps working with iCloud data.

这篇关于获取icloud Web服务端点以获取数据的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆