【问题标题】:Ruby Koala fql_multiquery parser errorRuby Koala fql_multiquery 解析器错误
【发布时间】:2012-01-17 00:23:22
【问题描述】:

向 Facebook 的 REST API 发送 10 个查询。通过 Koala 的 fql_multiquery 函数调用 REST API,输入哈希如下:

{"query11"=>"SELECT page_id, name, fan_count, page_url FROM page WHERE name='Wyoming Area Sec Center' ORDER BY fan_count DESC LIMIT 1", "query12"=>"SELECT page_id, name, fan_count, page_url FROM page WHERE name='Wyoming Area High School Exeter PA' ORDER BY fan_count DESC LIMIT 1", ...}

查询似乎都格式正确,但考拉返回:

Koala::Facebook::APIError: 601: Parser error: unexpected 's' at position 73.

以前有人遇到过这个错误代码吗?

【问题讨论】:

  • 哎呀!这就是问题所在: {"query18"=>"SELECT page_id, name, fan_count, page_url FROM page WHERE name='Governor's Academy' ORDER BY fan_count DESC LIMIT 1"} 州长学院中的撇号未转义。这可以通过简单地使用类似 str.gsub(/\\|'/) { |c| 的方式转义 FQL 查询输入来解决。 "\\#{c}" }

标签: ruby-on-rails facebook-fql koala


【解决方案1】:

哎呀!这就是问题所在:

{"query18"=>"SELECT page_id, name, fan_count, page_url FROM page WHERE name='Governor's Academy' ORDER BY fan_count DESC LIMIT 1"}

Governor's Academy 中的撇号未转义。这可以通过简单地转义 FQL 查询输入来解决,例如

str.gsub(/\\|'/) { |c| "\\#{c}" }

【讨论】:

  • 你能解释一下你的正则表达式吗?我面临同样的问题,即使我用一个额外的撇号来逃避我的撇号,它仍然不起作用。谢谢!
猜你喜欢
  • 1970-01-01
  • 2015-03-12
  • 2014-02-03
  • 1970-01-01
  • 1970-01-01
  • 2017-04-27
  • 2011-10-02
  • 2018-04-25
  • 1970-01-01
相关资源
最近更新 更多