【问题标题】:iOS QuickBlox SDK filtering custom objects by userIDiOS QuickBlox SDK 按用户 ID 过滤自定义对象
【发布时间】:2012-12-01 23:56:02
【问题描述】:

我正在尝试在运行 6.0.1 的 iPhone 4s 上使用 iOS6 SDK 按特定用户 ID 过滤自定义对象。不幸的是,当执行下面的代码时,它会返回创建的自定义对象模式中的所有记录。

    NSMutableDictionary *getRequest = [NSMutableDictionary dictionary];
    [getRequest setObject:@"222222" forKey:@"user_id"];
    [QBCustomObjects objectsWithClassName:@"appointments" extendedRequest:getRequest delegate:self];

(我省略了身份验证代码。我能够很好地进行身份验证并创建记录)对于密钥,我已经尝试了我能想到的用户 ID 的所有排列。包括查看查询请求的响应以及如何在 JSON 提要中引用该字段。就好像extendedRequest 没有考虑我在其中输入的任何值 - 但我在查看控制台日志时清楚地看到它们正在传递。

【问题讨论】:

    标签: ios quickblox


    【解决方案1】:

    很奇怪,因为我用过

    NSMutableDictionary *getRequest = [NSMutableDictionary dictionary];
    [getRequest setObject:[NSNumber numberWithInt:291] forKey:@"user_id"];
    
    [QBCustomObjects objectsWithClassName:@"SuperSample" extendedRequest:getRequest delegate:self];
    

    如果我们查看控制台,我们会看到:

    GET http://api.quickblox.com/data/SuperSample.xml
    headers:{
        "QB-SDK" = "iOS 1.3.1";
        "Qb-Token" = 00fbd4c38b4156975e63882ad660e9a724ae7a3d;
        "QuickBlox-REST-API-Version" = "0.1.1";
    }
    parameters:{
        "user_id" = 291;
    }
    

    这段代码 sn-p 只返回 user_id 291 的记录(在本例中,这是一条记录):

    <?xml version="1.0" encoding="UTF-8"?>
    <data type="array">
      <SuperSample>
        <_id>50bb4c1c535c12306b007ea4</_id>
        <_parent_id nil="true"></_parent_id>
        <born_age nil="true"></born_age>
        <created-at type="integer">1354451996</created-at>
        <my_field nil="true"></my_field>
        <rating nil="true"></rating>
        <sex_ nil="true"></sex_>
        <text nil="true"></text>
        <updated-at type="integer">1354451996</updated-at>
        <user-id type="integer">291</user-id>
        <vote nil="true"></vote>
      </SuperSample>
    </data>
    

    【讨论】:

      【解决方案2】:

      我回过头来查看我是如何创建一个 quickblox 会话的,并且我正在使用以下方法对 API 进行身份验证。

          [QBUsers logInWithUserEmail:@"" password:@"" delegate:self];
      

      我将其改为使用此方法,现在我可以从自定义对象模块中提取特定记录。

          [QBAuth createSessionWithExtendedRequest:extendedAuthRequest delegate:self];
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2021-11-26
        • 1970-01-01
        • 2012-07-23
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多