如何从vk.api获取电子邮件地址?

时间:2014-08-27 13:41:04

标签: javascript vk

我试图获取电子邮件地址。登录成功后,我有名字,姓氏,除了电子邮件以外的所有名字。请帮忙。

VK.Auth.login(function (response) {
            if (response.session) {


            } else {

            }
        }, 4194304);

5 个答案:

答案 0 :(得分:7)

当您获得访问令牌时,VK还会为您提供电子邮件和用户ID,但您需要具体的权限 - “电子邮件”。

答案 1 :(得分:1)

vk.com现在具有该功能。请尝试查看此文档页面:https://vk.com/dev/permissions

答案 2 :(得分:1)

是的,这种方式不会发送电子邮件。但是有办法通过OAuth获取电子邮件(对于网站vk.com/dev/auth_sites),电子邮件将以GET参数和令牌一起返回。

在Coffescript / Javascript中你可以使用window.open(...)

appId = 'your app id'
redirectUri = 'your redirect uri'
url = 'https://oauth.vk.com/authorize?client_id='+appId+'&display=popup&redirect_uri='+redirectUri+'&response_type=token&scope=email'

newWin = window.open(url, 'vk-login', 'width=665,height=370')

以后你有两种方法可以收到电子邮件

  1. 关于重定向uri处理程序(服务器方式)
  2. 重定向到您网站的任何地方,每秒检查一次newWin.location.href a if(newHref.indexOf(redirectUri)!= -1)然后提取参数email(客户端方式)

答案 3 :(得分:0)

没有办法做到这一点。 Vk是特定的社交网络。我也有同样的问题。

答案 4 :(得分:0)

你可以使用window.open

var url = 'https://oauth.vk.com/authorize?client_id=APP_ID&scope=email&redirect_uri=http://yoursite.com&response_type=token'

        var newWin = window.open(url, 'vk-login', 'width=665,height=370')
        newWin.onload = function() {
          var hash = newWin.location.hash
          console.log(hash)
        }