2012-12-01 82 views
2

我試圖通過運行6.0.1的iPhone 4s上的iOS6 SDK通過特定用戶ID篩選自定義對象。不幸的是,當執行下面的代碼時,它將返回創建的自定義對象模式中的所有記錄。iOS QuickBlox SDK按用戶ID篩選自定義對象

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

(我省略的驗證碼。我可以驗證並創建一個記錄就好了),因爲我已經試過所有的排列,我能爲用戶ID認爲的關鍵。包括查看查詢請求的響應以及字段在jSON提要中的引用方式。這幾乎就像extendedRequest沒有考慮到我放入的任何值 - 但我清楚地看到它們在查看控制檯日誌時被傳遞。

回答

1

我回去看看我是如何創建一個quickblox會話,我正在使用以下方法使用API​​進行身份驗證。

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

我將它切換爲使用此方法,我現在可以從自定義對象模塊中提取特定記錄。

[QBAuth createSessionWithExtendedRequest:extendedAuthRequest delegate:self]; 
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; 
} 

而且這個代碼片斷返回我只記錄與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> 
相關問題