BBASMURLFixer.h 1.32 KB
//
//  HSURLFixer.h
//  Hades
//
//  Created by baidu on 2019/1/29.
//
// 替换废弃的BBAURLFixup方法,参考http://agroup.baidu.com/share/md/0680a7ce19b241d1adebcd304fd6fcd5

#import <Foundation/Foundation.h>

NS_ASSUME_NONNULL_BEGIN

@interface BBASMURLFixer : NSObject

/**
 * @brief 字符串转URL,如果它不是一个合法的URL,会做一些fix,包括中文转义、punycode编码,加http scheme等
 *
 * @param aURLString 字符串
 * @return NSURL 注意:如果为nil表示字符串不能转成合法的URL
 *
 */
+ (NSURL *)URLWithString:(NSString *)aURLString;


/**
 * @brief 字符串转URL,如果它不是一个合法的URL,会做一些fix,包括中文转义、punycode编码,加http scheme等
 *
 * @param aURLString 字符串
 * @param processer 业务方对URL的特殊处理
 * @return NSURL 注意:如果为nil表示字符串不能转成合法的URL
 *
 */
+ (NSURL *)URLWithString:(NSString *)aURLString
            urlProcessor:(nullable NSURL *(^)(NSString *sourceURL, NSString *escapeURL))processer;

/**
 * @brief 中文转义,会对字符串中除了英文大小写、数字和特殊符号的字符进行转义
 *
 * @param string 需要转义的字符串
 * @return NSString 转义后的字符串
 */
+ (NSString *)safeEscapedStringWithString:(NSString *)string;

@end

NS_ASSUME_NONNULL_END