【发布时间】:2018-11-12 06:04:03
【问题描述】:
我正在测试以下示例,通过登录并重定向到身份验证屏幕来验证用户身份 - http://jsfiddle.net/JMPerez/j1sqq4g0/
此示例使用带有以下脚本的回调页面:
(function() {
var hash = {};
window.location.hash.replace(/^#\/?/, '').split('&').forEach(function(kv) {
var spl = kv.indexOf('=');
if (spl != -1) {
hash[kv.substring(0, spl)] = decodeURIComponent(kv.substring(spl+1));
}
});
console.log('initial hash', hash);
if (hash.access_token) {
window.opener.postMessage(
JSON.stringify({
type:'access_token',
access_token: hash.access_token,
expires_in: hash.expires_in || 0
}),
'http://fiddle.jshell.net'
);
window.close();
}
})();
在移动设备上尝试时,它将在 Safari 中打开一个新标签。是否可以检查应用程序是否安装在 iOS 上并通过该应用程序登录?将使过程更快。
正如这里的一个问题所见,它似乎已解决,但无法理解是什么触发了它这样做? - https://github.com/spotify/web-api/issues/718
谢谢!
【问题讨论】:
-
不幸的是,无法检查应用程序是否安装了 iOS,曾经有一些变通方法但大多数不再有效,这是由于隐私问题导致广告公司无法识别和指纹识别用户.
-
我认为如果安装了应用程序并且您打开了正确的链接,这些链接是由
Spotify app实现的通用链接,那么它应该启动应用程序。我怀疑登录链接是通用链接,它应该会打开 Spotify 应用程序。 -
如果 URI 以 spotify:// 而不是 https:// 开头,则设备将打开相应的应用程序。这适用于任何桌面和安卓设备。我不能告诉iOS,而且链接参数也不同,我猜。因此这不是 Spotify 本身的问题,因为浏览器可以使用 HTTP 协议来满足请求。
-
我使用 Spotify API 已经有一段时间了,但我还没有看到这是可能的。我又看了看,Spotify 应用程序目前似乎不支持此功能。 developer.spotify.com/documentation/general/guides/… 根据我的经验,Spotify API 非常有限,而且似乎过时了,即使在今天,官方应用程序中也缺少许多可用的新功能。
标签: javascript ios spotify