Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/226.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何添加一个链接,让用户在我的网站上更改他们的Gravatar?_Php_Gravatar - Fatal编程技术网

Php 如何添加一个链接,让用户在我的网站上更改他们的Gravatar?

Php 如何添加一个链接,让用户在我的网站上更改他们的Gravatar?,php,gravatar,Php,Gravatar,我如何添加一个链接,让用户在我的网站上更改他们的Gravatar? (与您在Wordpress上更改Gravatar的方式相同) 谢谢, Kenneth如果您提供链接,他们将进入Gravatar网站,在那里他们可以登录并更改帐户。我不确定是否有其他公共API允许此更改。Automatic的Gravatar API不提供此功能。你最好将用户链接到Gravatar网站 如果你真的想用CSRF做一些实验,我还没有测试过Gravatar站点是否能抵御这种攻击。最好的情况是,这将是不稳定的——我无法想象任

我如何添加一个链接,让用户在我的网站上更改他们的Gravatar? (与您在Wordpress上更改Gravatar的方式相同)

谢谢,
Kenneth

如果您提供链接,他们将进入Gravatar网站,在那里他们可以登录并更改帐户。我不确定是否有其他公共API允许此更改。

Automatic的Gravatar API不提供此功能。你最好将用户链接到Gravatar网站

如果你真的想用CSRF做一些实验,我还没有测试过Gravatar站点是否能抵御这种攻击。最好的情况是,这将是不稳定的——我无法想象任何人会像他们的Twitter帐户一样一直登录Gravatar帐户


最后,您可以在iFrame中加载Gravatar站点,这样用户就不会真正离开您的域。

查看wordpress.com上的html源代码,看起来他们正在使用类似的东西在iFrame中加载Gravatar站点:

<a href="https://secure.gravatar.com/accounts/force-by-email/wpcom/username/somecode?TB_iframe=true&amp;height=475&amp;width=960" id="gravatar_ui" class="thickbox" title="gravatar.com" onclick="return false;">
   <img src="https://secure.gravatar.com/avatar/gravatarid?s=128&amp;r=any&amp;time=43179786" class="no-grav">
   <p style="text-align: center;">Change your Gravatar</p>
</a>

应该可以使用XML-RPC实现化身的更改。协议由Gravatar指定:

实际上有个电话

  • grav.saveData
    -将二进制图像数据保存为此帐户的用户图像
  • grav.saveUrl
    -通过图像的URL读取图像,并将其保存为此帐户的用户图像

因此,您需要自己实现更改,但您可以避免人们必须登录gravatar。

gravatar不允许此功能。WordPress.com能够做到这一点的唯一原因是,它们都是Automattic提供的服务,并且都使用WordPress.com帐户,因此它们得到了一些额外的字符串。你最好的选择是链接到Gravatar网站,或者将其加载到iframe中。如果您在iframe中加载它,它会提示他们登录到WordPress.com帐户,除非他们经常使用WordPress.com,并且他们的浏览器一直登录到该帐户。

我正在寻找一种用户不必再次登录的方法。无论如何,谢谢你的回答。:)你成功地让它工作了吗?你是怎么做到的?