2016-08-17 4 views
0

Я использую гибридное приложение, использующее Ionic framework. Я хочу внедрить систему событий facebook для участия в некоторых событиях. У меня есть это:Ионное приложение с возможностью посещать события facebook

  ngFB.api(
        '/666945880120392/attending', 
        'GET', 
        {}, 
        function(response) { 
         // Insert your code here 
        } 
       ); 

и я ngFB в моем app.js файл, как это:

ngFB.init({appId: '[APP_ID]'}); 

Ошибка у меня есть:

openfb.js:256 GET https://graph.facebook.comundefined/?access_token=undefined net::ERR_NAME_NOT_RESOLVED 

Я искал решение но ответа нет. Я также попробовать в facebook консоли разработчика и ответ правильный:

https://developers.facebook.com/tools/explorer/145634995501895/?method=GET&path=666945880120392%2Fattending&version=v2.7

Что происходит? Благодаря!

EDIT 1

Благодаря @ E666 я теперь это

ngFB.api({ 
    method: 'GET', 
    path: '/666945880120392/attending' 
}).then(function(response) { 
    console.log(response); 
}).catch(function(error) { 
    console.error(error); 
}); 

И ошибка теперь, что если я вошел с учетной записью всегда возвращается в событии :

Object {data: Array[1], paging: Object} 

И внутренние данные - это имя другого человека, уникального человека, который является аттеном ding к событию и никому, кто зарегистрирован с токеном доступа. Спасибо!

EDIT 2

я открыл еще один вопрос, потому что это не результат, чем я надеюсь, мне нужно, чтобы перейти к событию, не получить список людей, который идет к событию. У меня это сейчас:

ngFB.api(
        "/666945880120392/attending", 
        function (response) { 
         if (response && !response.error) { 
          console.dir(response); 
         } 
        } 
       ); 

access_token нормально, и ответ

openfb.js:256 GET https://graph.facebook.comundefined/?access_token=EAABlK6y7pOUBAN3CPWdZB5FL…LCpXL9Bd3ELHQZAA6EJc6cCheAxUUnL59ZCZAf7aROCapJxiu991fxjDkxmMO651rfuREwZDZD net::ERR_NAME_NOT_RESOLVED 

В странице Facebook https://developers.facebook.com/tools/explorer/?method=POST&path=666945880120392%2Fattending&version=v2.5

Отклик

{ 
    "error": { 
    "message": "(#299) Requires extended permission: rsvp_event", 
    "type": "OAuthException", 
    "code": 299, 
    "fbtrace_id": "G7HFJ48pbkx" 
    } 
} 

Но У меня есть это разрешение. Может кто-то мне помочь, пожалуйста?

+0

API-интерфейс конечных точек включает в себя «не определено». debug ngFB.api и посмотреть, почему это происходит. – luschn

+0

@luschn Как я могу его отладить? – Ary

+0

Было ли это работать над графиком api? Потому что api, который вы используете, доступен только при чтении, а запрос на участие в событии кажется странным. Пожалуйста, ознакомьтесь с документами facebook: https://developers.facebook.com/docs/graph-api/reference/event/attending. Кроме того, я не уверен, что вы должны продолжать использовать этот пост. Поскольку проблема изменилась. Вы его разрешили. – e666

ответ

1

Во-первых, путь не определен, потому что вы не используете метод api. Вот как вам нужно использовать:

ngFB.api({ 
    method: 'GET', 
    path: '/666945880120392/attending' 
}).then(function(response) { 
    console.log(response); 
}).catch(function(error) { 
    console.error(error); 
}); 

Кроме того, вы не определено в access_token. Поскольку я смотрел в библиотечном коде, я не уверен, что вы можете использовать эту библиотеку без входа в систему как пользователь, чтобы иметь access_token.

Чтобы иметь access_token вам нужно использовать эту функцию:

ngFB.login({scope: 'email'}).then(function(response) { 
    console.log('Access token' + response.authResponse.accessToken); 
}).catch(function(error) { 
    console.error(error); 
}); 

access_token будет автоматически прилагается к заказу, что вы делаете с OpenFB.

Вы можете найти более полные примеры того, как использовать библиотека является GitHub здесь: https://github.com/ccoenraets/OpenFB/blob/master/indexng.html

+0

Да, у меня есть access_token, когда пользователь loggin в приложении, но где я должен его поставить? Спасибо миллион – Ary

+0

Я выполнил свой ответ. – e666

+0

Я думаю, проблема в том, что я вхожу в систему с cordovaOauth, и, возможно, в ngFB нет access_token. Это какой-либо способ присутствовать на мероприятии с использованием cordovaOauth? Спасибо миллиону – Ary

Смежные вопросы