Javascript 构建FB.api查询时遇到问题

Javascript 构建FB.api查询时遇到问题,javascript,facebook,pagination,facebook-javascript-sdk,facebook-sdk-4.0,Javascript,Facebook,Pagination,Facebook Javascript Sdk,Facebook Sdk 4.0,好吧,我正在开发一个Facebook群组订阅源,它可以加载更多的结果,但是我在构建初始查询时遇到了问题,无法让所有这些都正常工作 在下面的第一个if语句中,您可以看到我将查询的各个部分放入变量中,然后调用函数,传递这些变量。这一切都很好 if (response.status === 'connected') { // Logged into your app and Facebook. console.log('Welcome! Fetching your information.... '

好吧,我正在开发一个Facebook群组订阅源,它可以加载更多的结果,但是我在构建初始查询时遇到了问题,无法让所有这些都正常工作

在下面的第一个if语句中,您可以看到我将查询的各个部分放入变量中,然后调用函数,传递这些变量。这一切都很好

if (response.status === 'connected') {
// Logged into your app and Facebook.
console.log('Welcome!  Fetching your information.... ');

var path = '/', 
    method = 'POST',
    params = {
      batch: [
        {method : 'GET', name : 'user', relative_url : '/me?fields=id,name,picture'},
        {method: 'GET', name : 'post-ids', relative_url: '/group-id/feed?fields=fields{with field expansion}',omit_response_on_success : false}
      ]
    };

loadFeed(path, method, params);

}
下面的函数是我遇到问题的地方。第一次调用函数时,我需要将这三个变量合并为一个变量,并使用FB.api调用它。您可以在此处看到该函数:

function loadFeed(path, method, params) {

    console.log('------------------');
    console.log(path + ', ' + method + ', ' + params);

    if(path != 'undefined') {
      if(method != 'undefined') {
        if(params != 'undefined') { var query = '{\'' + path + '\', \'' + method + '\', ' + params + '}'; } 
      } 
      else { var query = path; }
    } 

    $('#load-more').css('display', 'hidden');

    FB.api(query, function (response) {
        console.log(response);

      // first time page loads, response[0] is the login, and response[1] is the feed
      // each time after that, response[0] is the feed

      if(response.length > 1) {
        var membody = JSON.parse(response[0].body),
            feed = JSON.parse(response[1].body);
      } else {
        var feed = JSON.parse(response);
      }

      if(feed.paging) {

        if(feed.paging.next) {

          var load_more = '<div id="load-more"><center>Load more</center></div>',
              method = '',
              params = '';

          $('#feed').append(load_more);

          $('#load-more').click( function() {
            loadFeed(feed.paging.next);
          });

        }

      }

    });
}
这似乎告诉我,我基本上把查询放错了,但我尝试了一些不同的方法,但都不起作用。您可以在错误消息中看到,在查询的开始处缺少一个单引号,而我无法确定如何将单引号保留在那里

有人对我如何解决这个问题有什么想法吗


另外,如果你知道一个更好的方法来做这一切,那么我也会很感激

您似乎正在使用HTTP API参数构建Javascript API调用

要为用户查询JS API,请执行以下操作:

FB.api /me、//或/999999999用户的id 函数响应{ 如果响应&&!response.error{ /*处理结果*/ } ; 资料来源:

要查询组的JS API,请执行以下操作:

FB.api /{组id}, 函数响应{ 如果响应&&!response.error{ /*处理结果*/ } } ; 资料来源:

error: Object
    code: 2500
    message: "Unknown path components: /', 'POST', [object Object]}"
    type: "OAuthException"