gpt4 book ai didi

ios - 从常量类访问基本 url

转载 作者:行者123 更新时间:2023-12-01 20:10:15 24 4
gpt4 key购买 nike

我创建了一个类“AppConstant”并像这样为“baseURL”定义了一个全局常量。
APPCostant.h

#import <Foundation/Foundation.h>

extern NSString * const appBaseUrl;

@interface APPConstant : NSObject
@end

` AppConstant.m
#import "APPConstant.h"

@implementation APPConstant

/** defining base url of server **/
NSString *const AppbaseURL = @"http://www.exapmle.com/";

@end

现在我已经导入了 AppConstant.h在我想使用基本 url 的类中,并尝试像下面那样构建我的 url,但我得到了编译时错误。

架构 x86_64 的 undefined symbol :
“_appBaseUrl”,引用自:
-[KKSearchViewController searchRequest] in KKSearchViewController.o

 NSURL *url =[NSURL URLWithString:@"search" relativeToURL:[NSURL URLWithString:appBaseUrl]];

我不确定,这里有什么问题。我想要实现的是更简洁和可重用的代码,这样我就不必在每个类中更改 url。

最佳答案

看起来您正在尝试通过在每个 View Controller 的 baseUrl 中附加路径来调用 API,但最好通过将路径传递给它并将回调中的响应发送到发送方 View Controller 来完成 One Helper 类中的所有 api 调用相关任务。

在 Api Helper 类中

 #import "Apicaller.h"
static NSString *baseUrl = @"http://baseUrl/";

@implementation Apicaller

+(void)postToUrl:(NSString*)appendString parametersPassed:(NSDictionary*)parameters completion:(void (^) (NSMutableDictionary *response))completion{
NSString *url = [NSString stringWithFormat:@"%@%@", baseUrl,appendString];
//Do urlrequest and return response in completion
completion(responseObject);


}


@end

你可以从任何你想要的地方调用这个类方法
  [Apicaller postToUrl:path parametersPassed:parameter completion:^(NSMutableDictionary *response) {

//This is callback Response
NSLog(@"this is response %@", response);


}];

关于ios - 从常量类访问基本 url,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37850751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com