我正在尝试获取相册列表,如下所示:https://developers.google.com/picasa-web/docs/1.0/developers_guide_protocol#ListPhotos
得到https://picasaweb.google.com/data/feed/api/user/default授权:承载MY_ACCESS_TOKEN_HERE
所以,问题是我得到了"404未知用户"的响应。奇怪的是,当我从另一台电脑用相同的访问令牌发出相同的请求时,我得到了正确的响应(200 OK和专辑列表)。
我没有在谷歌上搜索任何有用的东西,除了API上的Python类似问题(比如这里:AuthSub:(404,';未找到';,';未知用户。';)。有人面临同样的问题吗?
所以,问题是如果这些请求包含一些错误的Cookie标头,Google Photos服务器会错误地处理这些请求。我说"不正确"是因为其他Google API(如Drive、Contacts等)没有这个问题。
所以,我所要做的就是在InternetOpenUrl函数中添加标志INTERNET_flag_NO_COOKIES
InternetOpenUrl(NetHandle, PChar(Url), PChar(Header), Length(Header), INTERNET_FLAG_RELOAD or INTERNET_FLAG_NO_COOKIES, 0);
之后,使用带有标志的InternetOpenUrl发送HTTP请求将不再返回此错误。