objective-c - 将请求 URL 实现到使用 WordNik API 的导入的 cocapod

标签 objective-c swift xcode wordnik

我正在使用名为 HNKWordLookup 的 Cocapod(最初用 objective-c 编写)在 Xcode 中制作一个快速应用程序。此 pod 使用 WordNik API 返回随机单词。我唯一的问题是返回的很多词都非常模糊。

我想我可以去 http://developer.wordnik.com/docs页面并在那里设置参数,然后得到一个满足这些参数的请求 URL。我假设我需要将其放入我的代码中的某个位置,以代替预先编写的 pod 中存在的另一个 URL,但我不知道将请求 URL 放在哪里。起初,我将它放在 pod 的 .m 文件 ("HNKLookup.m:) 中的以下代码行中:

 static NSString *const kHNKLookupBaseUrl = @"http://api.wordnik.com:80/v4";

将其更改为

static NSString *const kHNKLookupBaseUrl = @"http://api.wordnik.com:80/v4/words.json/randomWord?hasDictionaryDef=true&excludePartOfSpeech=definite-article&minCorpusCount=1&maxCorpusCount=-1&minDictionaryCount=30&maxDictionaryCount=-1&minLength=1&maxLength=-1&api_key=a2a73e7b926c924fad7001ca3111acd55af2ffabf50eb4ae5";

但这破坏了我的代码。我是否应该在 pod 中寻找特定的短语或区域,我可以将新的请求 URL 放入其中,从而使用所需的参数运行我的程序?如您所知,我对编程还很陌生。

最佳答案

您不应该更改 pod 中的 kHNKLookupBaseUrl。 kHNKLookupBaseUrl 用于连接到服务。 使用它来获取一个随机词:

    [[HNKLookup sharedInstance] randomWordWithCompletion:^(NSString *randomWord, NSError *error) {
    if (error) {
        NSLog(@"ERROR: %@", error);
    } else {
        NSLog(@"%@", randomWord);
    }
}];

您已经在 HNKHttpSessionManager.m 中初始化了参数

+ (NSUInteger)randomWordWithCompletion:(void (^)(NSURLSessionDataTask *, id,
                                                 NSError *))completion
{
  return
      [self startRequestWithPath:kHNKPathRandomWord
                      parameters:@{
                        @"hasDictionaryDef" :
                            @(kHNKRandomWordShouldHaveDictionaryDefinition),
                        @"minCorpusCount" : @(kHNKRandomWordMinimumCorpusCount),
                        @"maxCorpusCount" : @(kHNKRandomWordMaximumCorpusCount),
                        @"minDictionaryCount" :
                            @(kHNKRandomWordMinimumDictionaryCount),
                        @"maxDictionaryCount" :
                            @(kHNKRandomWordMaximumDictionaryCount),
                        @"minLength" : @(kHNKRandomWordMinimumLength),
                        @"maxLength" : @(kHNKRandomWordMaximumLength)
                      }
                      completion:completion];
}

您可以调整它以获得所需的结果。

关于objective-c - 将请求 URL 实现到使用 WordNik API 的导入的 cocapod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48958821/

相关文章:

swift - 如何快速连接字符串中的 "+"运算符

ios - Xcode 在验证时卡住

iphone - iOS 6.0 轮换中的问题

iphone - Sharekit - 发送 url 链接到 Facebook

ios - 删除单元格和标题之间的空间

swift - fatal error : unexpectedly found nil while unwrapping an Optional value while trying to change UILabel text

ios - Swift - 想要在单击 Collection View 单元格内的按钮时进行更改

objective-c - Mac 应用程序的窗口大小

ios - NSArray 在方法结束时丢失值

ios - Collection View 单元格中的多行标签在重用后中断