0

「Camfind」API のサンプル コードをコンパイルしようとしていますが、応答ヘッダーの取得に失敗しています。

NSDictionary *responseHeaders = response.headers

ARCでは、Objective 以外の C ポインター型int *を暗黙的に変換することNSDictionaryはできません。

ここに私の「podFile」があります:

# Uncomment this line to define a global platform for your project
platform :ios, '7.0'

target 'menswear' do
pod 'Unirest', '~> 1.1.3'
end

target 'menswearTests' do

end

このコードを使用して、最初にコンパイルをテストします。"here"から提供される例と同じです。

 // These code snippets use an open-source library.
         NSDictionary *headers = @{@"X-Mashape-Key": @"7ze1l1nX1Wmshc4yBzHqeWBldlkhp1CfGcmjsnATkTf58N2F8b", @"Content-Type":   @"application/x-www-form-urlencoded", @"Accept": @"application/json"};
    NSDictionary *parameters = @{@"focus[x]": @"480", @"focus[y]": @"640", @"image_request[altitude]": @"27.912109375", @"image_request[language]": @"en", @"image_request[latitude]": @"35.8714220766008", @"image_request[locale]": @"en_US", @"image_request[longitude]": @"14.3583203002251", @"image_request[remote_image_url]": @"http://upload.wikimedia.org/wikipedia/en/2/2d/Mashape_logo.png"};
    UNIUrlConnection *asyncConnection = [[UNIRest post:^(UNISimpleRequest *request) {
        [request setUrl:@"https://camfind.p.mashape.com/image_requests"];
        [request setHeaders:headers];
        [request setParameters:parameters];
    }] asJsonAsync:^(UNIHTTPJsonResponse *response, NSError *error) {
        NSInteger code =  response.code;
        NSDictionary *responseHeaders = response.headers
        UNIJsonNode *body = response.body;
        NSData *rawBody = response.rawBody;
    }];

「ヘッダー」は、UNIHTTPJsonResponse が拡張する UNIHTTPResponse のプロパティです。

@interface UNIHTTPResponse : NSObject

@property(readwrite) NSInteger code;
@property(readwrite, strong) NSDictionary* headers;
@property(readwrite, strong) NSData* rawBody;

@end

これは非常に簡単なようです。int *に表示されているものにもかかわらず、Xcode がヘッダーを として解釈する理由がわかりませんUNIHTTPResponse.h

4

0 に答える 0