Я пытаюсь создать стейк-канал Facebook для мобильного приложения с использованием инфраструктуры Ionic/AngularJS. Мне нужна помощь, чтобы получить ссылку прямого изображения опубликованной фотографии на моем фан-странице. Объект изображения из данных JSON отображает очень маленькое эскиз оригинальной фотографии, поэтому, если я увеличиваю размер с помощью CSS, это портит качество. Я использую URL-адрес ссылки как img ng-src, но не отображает ничего, поскольку ссылка не к самому изображению, но ссылка на сообщение на facebook.
Ниже приведены мои коды, Внутренний вид:
<ion-content padding="true" ng-controller="FacebookCtrl" class="has-footer">
<label class="item item-input">
<i class="icon ion-search placeholder-icon"></i>
<input type="text" placeholder="Search..." ng-model="query" >
</label>
<ion-list ng-repeat="item in news | filter:query | limitTo:20">
<ion-item ng-if="item.type == 'photo'">
<h2 >{{item.caption}}</h2>
<p>{{item.message}}</p>
<img ng-src="{{item.link}}"/><br>
<i class="icon ion-android-favorite"></i> {{item.likes.data.length}} Pelqime
<p>Publikuar me: {{item.created_time | date: 'medium' }} </p>
</ion-item>
<ion-item ng-if="item.type == 'link'">
<h2 >{{item.name}}</h2>
<p>{{item.message}}</p>
<img ng-src="{{item.picture}}"/><br>
<i class="icon ion-android-favorite"></i> {{item.likes.data.length}} Pelqime
<p>Publikuar me: {{item.created_time | date: 'medium' }} </p>
</ion-item>
<ion-item ng-if="item.type == 'video'">
<h2 >{{item.name}}</h2>
<p>{{item.message}}<br>
{{item.source}}
</p>
<video width="400" controls src="{{item.source}}">Your browser does not support HTML5 video.
</video>
<i class="icon ion-android-favorite"></i> {{item.likes.data.length}} Pelqime
<p>Publikuar me: {{item.created_time | date: 'medium' }} </p>
</ion-item>
</ion-list>
</ion-content>
контроллер:
.controller('FacebookCtrl',function($scope,$http){
$http.get('https://graph.facebook.com/radioopendimi/feed?access_token=APP_ID|APP_Secret').then(function(resp){
$scope.news = resp.data.data;
console.log('Success: ',resp);
}, function(err){
console.error('Error: ',err);
});
});
Запросите поле full_picture
, которое должно содержать самую большую версию изображения, доступную Facebook.
https://graph.facebook.com/radioopendimi/feed?fields=full_picture,[…]&access_token=…
Имейте в виду, что при использовании параметра fields
вы должны указать все поля, которые хотите получить, иначе вы получите только id
по умолчанию.