gpt4 book ai didi

objective-c - Cocoa 应用程序处理标准 HTTP url 方案

转载 作者:行者123 更新时间:2023-12-03 18:04:02 25 4
gpt4 key购买 nike

我需要使用我的应用程序处理以特定域开头的 HTTP URL,因为它指向 REST 源。然而,Web 服务不在我的控制之下,因此我无法轻松引入自定义 URL 方案来打开我的应用程序的链接。

有没有办法在 Cocoa 应用程序中拦截和处理此类 URL?

示例:http://static.domain.name/some/random/path

我的应用程序应该处理指向http://static.domain.name的所有链接

恐怕答案是否定的,但是嘿,一切皆有可能:)。

更新

<小时/>

这是我用来使其工作的 Safari 扩展代码(<> 中的内容替换为您的内容)

var allLinks = document.links;
for (var i=0; i<allLinks.length; i++) {
var link = allLinks[i];
if (/.*<match>.*/.test(link.href)) {
var rewrite = link.href.replace(/<match>/, "<customscheme>://");
link.href = rewrite;
console.log("Rewrote: " + rewrite);
}
}

最佳答案

只需根据您自己的方案对整个网址进行编码,例如myscheme://http%3A//static.domain.name/some/random/path

当您的应用程序处理 URL 时,只需截掉第一部分并取消转义即可:

- (BOOL)application:(UIApplication *)application handleOpenURL:(NSURL *)url {
NSString * urlString = [url description];
// Remove your scheme
urlString = [urlString stringByReplacingOccurrencesOfString:@"myscheme://" withString: @""];
// Unescape
urlString = [urlString stringByReplacingPercentEscapesUsingEncoding: NSASCIIStringEncoding];
// Do something with urlString
return YES;
}

但是没有。无法分配您处理 http://

关于objective-c - Cocoa 应用程序处理标准 HTTP url 方案,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3790164/

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