我正试图从一个人那里得到最后5条推文。我做到了,但个人资料图片看起来不正常,分辨率已损坏。像那样。 ! http://i.hizliresim.com/wLQEJZ.jpg
var $twitter = $('#twitter');
$.getJSON('http://www.demo.net/twitter.php?username=yeniceriozcan&count=5', function(data){
var total = data.length,
i = 0;
$twitter.html(''); // önce içindekini temizle sonra tweetleri yazdır.
for ( i; i < total; i++ ){
var tweet = data[i].text; // tweet
var date = parseTwitterDate(data[i].created_at); // tarih
var image = data[i].user.profile_image_url; // profil resmi
var url = 'https://twitter.com/' + data[i].user.screen_name +'/status/' + data[i].id_str;
$twitter.append('<div class="tweet"><a target="_blank" href="' + url + '"><img src="' + image + '" alt="" class="profile-image" />' + tweet + '</a> <span class="tweet-date">(' + date + ')</span></div>');
}
});
这是我的代码。我试图获取个人资料图片,
var image = data[i].user.profile_image_url;
还有其他推文文件,
$tweets = $twitter->get('https://api.twitter.com/1.1/statuses/user_timeline.json?screen_name='.$username.'&count='.$count);
print json_encode($tweets);
我用过这个api。
但我无法以正常分辨率查看图片。我该如何解决? 感谢。
答案 0 :(得分:38)
我发现使用更大的图片仍会以相对较小的格式恢复图片。使用此答案可以调整图像大小,使您可以拍摄大图像而不会失真。
如果你想让图像全尺寸,只需摆脱&#34; _normal&#34;完全
http://pbs.twimg.com/profile_images/429221067630972918/ABLBUS9o_normal.jpeg
转到
http://pbs.twimg.com/profile_images/429221067630972918/ABLBUS9o.jpeg
注意:此答案中的网址已修改,以便不反映我的推文详细信息,因此为什么输入这些网址会给您一个&#34;没有页面存在&#34;
答案 1 :(得分:22)
当您从data [i] .user.profile_image_url中读取网址时,请将“_normal”替换为“_bigger”。以下是Twitter文档的解释:
答案 2 :(得分:10)
如果你仍然需要回答这个问题(因为以前没有一个被标记为已接受的答案),这就是我设法处理module MyModule {
export module Services {
export class MyService {
constructor() {
console.log(this); // this refers to service instance, as expected
}
}
}
}
module MyModule {
export module Configurations {
export class MyConfiguration {
constructor() {
console.log(this); // this refers to Window!?
}
}
}
}
图片网址尺寸的方法:
从API中抓取var app = angular.module('MyApp', ...);
app.config(MyModule.Configurations.MyConfiguration);
app.service('MyService', MyModule.Services.UserService);
将返回&#34; http&#34;和&#34; https&#34;网址采用以下格式:
<强> HTTP:强>
Twitter API
<强> HTTPS:强>
URL
无论出于什么原因,Twitter认为 48x48 png 足够好了。 如果你想要全分辨率,你需要删除&#34; _normal&#34;来自任一网址的代码,如上所述angryTurtle。这将为您提供完整大小图像的URL。以下是完成此任务的快速示例:
http://pbs.twimg.com/profile_images/378812345851234567/Ay2SHEYz_normal.png
希望这对您有所帮助,您可以将其中一个标记为已接受的答案来解决问题!
仅供参考:我还修改了网址内容以保护我自己的Twitter信息,解释了没有页面存在&#34;使用上面提供的URL之一时。
答案 3 :(得分:7)
2017年5月6日更新
当您通过 profile_image_url 或 profile_image_url_https (请参阅User Profile Images and Banners)获取用户个人资料图片时,请尝试替换“ _normal ”在文件名末尾带有“ _400x400 ”。
似乎他们现在正在将图像缩小到400x400,然后删除原始文件。