Unity FB.API请求在iOS上返回unsupportedURL,在编辑器中工作

时间:2015-06-03 10:55:53

标签: ios facebook facebook-graph-api unity3d

我正在使用官方Facebook SDK从Unity应用程序请求基本数据。 将first_name字段添加到好友列表

时出现问题

Unity Editor中没有问题,问题仅出现在 iOS ,控制台尖叫 UnsuportedURL

如果没有 {first_name} 朋友

后,

问题就不会出现

请求:

me?fields=id,name,friends{first_name}

Unity代码:

FB.API("me?fields=id,name,email,friends{first_name},first_name", HttpMethod.GET, delegate(FBResult dataResult) {

        if (!string.IsNullOrEmpty(dataResult.Error)) {
            //error occured
            Debug.LogError(dataResult.Error);
            error(dataResult.Error);
            isFinished(true);

        } else {

            Debug.Log(dataResult.Text);
        }

3 个答案:

答案 0 :(得分:1)

使用字段尝试此网址。

“我吗?字段= ID,名字,电子邮件,friends.fields(如first_name),如first_name”

答案 1 :(得分:0)

看起来花括号是破坏iOS NSURL的问题

逃避花括号的工作方式如下: NSURL with Curly Braces

"me?fields=id,name,email,friends%7Bfirst_name%7D,first_name"

答案 2 :(得分:0)

使用以下查询:

"/me?fields=id,first_name,gender,picture,email,friends{id,first_name,gender,picture},invitable_friends{id,first_name,picture}"

...在Unity编辑器中运行正常但在iOS上运行不正常。以前的解决方案不起作用。

从大括号切换到常规括号 - Facebook拒绝包含无效字符。

切换到转义大括号(%7B和%7D) - 仍然返回不支持的网址。

以下是我最终修复它的方法:

"me?fields=id,first_name,gender,picture,email,friends.fields(id,first_name,gender,picture),invitable_friends.fields(id,first_name,picture)"