使用用户名和密码登录facebook。有办法吗?

使用用户名和密码登录facebook。有办法吗?,facebook,Facebook,我有一个移动应用程序,我希望用户向服务器发送他的facebook凭据信息,服务器将在facebook中代表他行事(获取好友列表等)。 我正在对此进行研究,但我只找到有关oauth2的信息,用户通过一个特殊链接登录Facebook,这样我的应用程序就可以访问他的FB信息。这对我没有帮助,因为我想在服务器端访问这些信息,而不是通过应用程序本身。有什么方法可以使用用户名和密码登录吗 我有一个用于facebook聊天的WP7应用程序,我在其中输入用户名和密码,然后进行连接,所以它应该是某种执行方式,对吗

我有一个移动应用程序,我希望用户向服务器发送他的facebook凭据信息,服务器将在facebook中代表他行事(获取好友列表等)。 我正在对此进行研究,但我只找到有关oauth2的信息,用户通过一个特殊链接登录Facebook,这样我的应用程序就可以访问他的FB信息。这对我没有帮助,因为我想在服务器端访问这些信息,而不是通过应用程序本身。有什么方法可以使用用户名和密码登录吗

我有一个用于facebook聊天的WP7应用程序,我在其中输入用户名和密码,然后进行连接,所以它应该是某种执行方式,对吗

编辑 因为这与TOS背道而驰,我正在考虑采取以下措施: 我的服务器向我的客户端发送URL,以便用户可以登录并允许我的应用程序访问其信息。之后,我的服务器将访问它。
这可能吗?

这不符合他们的tos,但您可以使用

<?php

/* EDIT EMAIL AND PASSWORD */
$EMAIL      = "";
$PASSWORD   = "";

function cURL($url, $header=NULL, $cookie=NULL, $p=NULL)
{
    $ch = curl_init();
    curl_setopt($ch, CURLOPT_HEADER, $header);
    curl_setopt($ch, CURLOPT_NOBODY, $header);
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_SSL_VERIFYHOST, 0);
    curl_setopt($ch, CURLOPT_COOKIE, $cookie);
    curl_setopt($ch, CURLOPT_USERAGENT, $_SERVER['HTTP_USER_AGENT']);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);
    curl_setopt($ch, CURLOPT_SSL_VERIFYPEER, 0);
    curl_setopt($ch, CURLOPT_FOLLOWLOCATION, 1);

    if ($p) {
        curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "POST");
        curl_setopt($ch, CURLOPT_POST, 1);
        curl_setopt($ch, CURLOPT_POSTFIELDS, $p);
    }
    $result = curl_exec($ch);

    if ($result) {
        return $result;
    } else {
        return curl_error($ch);
    }
    curl_close($ch);
}

$a = cURL("https://login.facebook.com/login.php?login_attempt=1",true,null,"email=$EMAIL&pass=$PASSWORD");
preg_match('%Set-Cookie: ([^;]+);%',$a,$b);
$c = cURL("https://login.facebook.com/login.php?login_attempt=1",true,$b[1],"email=$EMAIL&pass=$PASSWORD");
preg_match_all('%Set-Cookie: ([^;]+);%',$c,$d);
for($i=0;$i<count($d[0]);$i++)
    $cookie.=$d[1][$i].";";

/*
NOW TO JUST OPEN ANOTHER URL EDIT THE FIRST ARGUMENT OF THE FOLLOWING FUNCTION.
TO SEND SOME DATA EDIT THE LAST ARGUMENT.
*/
echo cURL("http://www.facebook.com/",null,$cookie,null);
?>


您可以使用TOS友好的解决方案是让用户在您的网站上注册,并使用Facebook SDK授予离线访问令牌。您的移动应用可以使用该令牌代表移动应用中的用户发出请求。我很清楚,您正在请求您打算对其进行的许可。

FB正在删除
离线访问
令牌

我想这个问题没有解决办法


没有离线访问,令牌60天后过期,没有用户名和密码访问(针对TOS)

这正是我需要的!谢谢!我明天会测试它,并给你一些反馈-1,虽然这是一个编程问答网站……但在不检查问题的所有方面(即使是在指导方针和政策方面)的情况下提供答案是不专业的(我也不认为这在道德上是可以接受的!)脚本不起作用,正如@ifaour提到的,这是不允许的。无论如何谢谢:)@ifaour:我知道他们的TOS不允许这样做。是的,我忘了把它添加到我的答案中,我相信这是不合法的,会给你带来真正的麻烦,请参考:>你不能包含代理、请求或收集Facebook用户名或密码的功能。嗨,这不是一个严肃的应用程序,不会发布。无论如何,非常感谢你的提醒:)