问题标签 [cocoahttpserver]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
556 浏览

share - cocoahttpserver - 显示文件

我尝试使用 cocoaHttpServer 通过 pc/mac 浏览器显示我的文档的文件夹文件,我使用 iPhoneHTTPServer 示例,我更改了根目录但我没有看到任何文件。这是我的代码:

我需要创建一个索引文件?但在这种情况下,我需要从设备刷新索引内容,而不是从浏览器刷新......有什么提示吗?

0 投票
3 回答
7888 浏览

ios - 创建一个在后台作为 Web 服务器运行的 iOS 应用程序

我想制作一个 iOS 应用程序(专门针对 iPad),它的行为类似于 Web 服务器。我看到了 COCOAHTTPSERVER 附带的示例,但我不明白。

我的应用程序是否可以在后台接收来自在同一设备上运行的另一个应用程序的请求?

如果可能的话,我该怎么做?

否则,如果不可能,那么无法在后台运行的 Web 服务器应用程序是什么意思?

我的确切问题如下:我需要一个 iOS 应用程序,它可以接收来自 javascript 应用程序的请求,在 safari 上运行,在同一设备上。我可以在后台创建一个类似于 Web 服务器的应用程序(因为 safari 必须在前台),还是有另一种方法来实现这个?

0 投票
0 回答
985 浏览

ios - NSURLConnection 失败,带有 SSL 的 CocoaHTTPServer 使用自定义 CA 签名的证书

我有一个包含 CocoaHttpServer 的小应用程序。我只想为环回调用启用它,并且我希望能够仅从我的应用程序进行这些调用。不要问为什么——我需要它。

服务器使用自定义 HTTPConnection 类,该类在isSecureServer方法中返回YES ,并使用使用自定义 CA 签名的证书。

每次我向服务器创建 NSURLConnection 时,它都会记录SecTrustResultType: 4并失败并出现错误:

我在 StackOverflow 上阅读了许多文章和许多问题,但没有帮助:

  1. 如何以编程方式将证书导入我的 iOS 应用程序的钥匙串并在需要时将身份传递给服务器?
  2. 如何使 iPhoneHTTPServer 成为安全服务器
  3. SecTrustEvaluate 始终使用 SecPolicyCreateSSL 返回 kSecTrustResultRecoverableTrustFailure
  4. 无法信任 iPhone 上的自签名证书
  5. https://developer.apple.com/library/ios/technotes/tn2232/_index.html#//apple_ref/doc/uid/DTS40012884-CH1-SECCUSTOMROOT
  6. https://developer.apple.com/library/mac/documentation/NetworkingInternet/Conceptual/NetworkingTopics/Articles/OverridingSSLChainValidationCorrectly.html

有两个“hacks”可以解决这个问题:

  1. 我可以实现connection:willSendRequestForAuthenticationChallenge: NSURLConnectionDelegate 的方法
  2. 我可以实现自定义 NSURLProtocol
  3. 将 CA 的证书通过电子邮件发送到设备并手动信任它

问题是我在我的应用程序中使用了与我的服务器通信的第三方库。它不使用 Foundation 框架,因此前两种方法不起作用。有没有办法以编程方式而不是手动发送证书?

0 投票
1 回答
716 浏览

javascript - iPhoneHTTPServer/CocoaHTTPServer 文件上传

我已经设法让 CocoaHTTPServer 中的 iPhoneHTTPServer 示例工作——我可以显示网页、运行 JavaScript 等,但我不知道如何将文件从我的 PC 上传到我的 iPhone。

我查看了“上传文件”的各种 JavaScript 示例,但它们似乎只在客户端加载文件,并没有实际将文件上传到服务器 - 即 - 我的 iPhone。

有人可以为我提供一些执行此操作的示例代码或有关如何完成此操作的一些指导吗?

0 投票
1 回答
789 浏览

ios - 在 iOS 上使用 CocoaHTTPServer 共享文件?

我想知道如何通过 WiFi 与 CocoaHTTPServer 共享 iOS 文件。这甚至可能吗,或者 CocoaHTTPServer 不可能吗?

我已经让它通过 WiFi 共享默认的 html 站点,但我不能让它显示整个目录。我要么喜欢共享应用程序文档目录,要么喜欢共享根文件系统。

0 投票
0 回答
71 浏览

ios - 使用 cocoahttp 广播服务器可用性

我当前的项目需要 iPhone 连接到 cocoahttp 服务器。目前,用户必须输入服务器的 ip 才能使设备进行通信。有没有办法让服务器广播它的可用性,以便手机可以看到它并选择它?

理想用例:电话显示可用服务器列表 用户选择服务器 服务器 ip 或机器名称存储在 plist 文件中

0 投票
1 回答
250 浏览

ios - 让应用充当服务器

我正在使用CocoaHTTPServer,我可以启动服务器。在我的资源文件夹中,我添加了一个名为“index.html”的文件,这让我感到困惑。

  • 我可以通过以下方式获取索引文件的路径

    [mainbundle pathForResource:@"index" ofType:@"html"]

    但它给了我路径 /Users/Library/Application%20Support/iPhone%20Simulator/7.0.3/Applications/。有什么方法可以让路径变成一个 web-url,就像 http://127.0.0.1:56000/user/library/.../index.html"在 UIWebView 上加载它一样。

  • 我想获取类似上述格式的文件路径,因为我想捕捉 UIWebView 何时向它发出请求以及应用程序何时响应。

我有什么办法可以实现吗??提前致谢。

0 投票
0 回答
399 浏览

ios - 使用 CocoaHTTPServer 捕捉 Socket 响应的时间

我正在使用CocoaHTTPServer,我想知道我们是否可以使用它来捕获浏览器(例如:我们的应用程序中的 UIWebView)请求加载本地 html 以及 Socket 何时响应浏览器?

  • 现在,据我了解。当 UIWebView 请求加载本地 html 文件时:

    • 它与 http GET请求相同(它正在等待响应?)
    • 服务器上的套接字接收到该GET请求然后将一些响应写入 Web 视图(如果我们可以捕获套接字响应 Web 视图的时间,那么我们可以修改响应,对吗?)
  • 在 Android 中,如果我打开一个 Socket,它会监听应用程序上的所有请求(即使它只是一个 web 视图需要加载本地 html 文件)。我们可以在 iOs 中做到这一点吗?

  • 最后,如果我有一个包含图像、音频和视频路径的 html 文件。当UIWebView加载html文件时,它首先加载html代码(我不确定),接下来是媒体内容,所以我可以在UIWebView加载这些媒体文件之前修改媒体文件(图像,音频,视频文件可以转换为 NSData,我修改数据并将数据发送给 web 视图以加载它)?

我也在使用AFNetworking 2.0,但用于其他目的。我只想知道AFNetworking 2.0是否支持上面提到的那些套接字流?

0 投票
1 回答
537 浏览

ios - Chrome Cast 无法播放已投放的视频

好的,我正在为 IOS 上的 chrome cast 开发一个应用程序。我的应用程序将执行的功能之一是从您的​​设备播放本地视频。为此,我使用了在 github 上找到的一个名为CocoaHttpServer 的外部源。这个 Http 服务器允许我将文件上传到 localhost 服务。为此,我使用以下代码启动我的服务器:

然后此代码设置我的 http 服务器并指向它以查看导入到我的主包中的 web 文件夹,并包含我从谷歌下载用于测试目的的测试视频(谷歌在他们的流式传输示例中使用该视频到 chrome cast通过网络)。我从http://commondatastorage.googleapis.com/gtv-videos-bucket/sample/BigBuckBunny.mp4获得了这个视频。除此之外,代码还设置了一个新的媒体频道,准备好让 chrome cast 投射到...

接下来我有我的 void 函数startServer,它真正建立连接并发布服务器......

最后,下面的代码将路径设置为等于 localhost url,并将视频投射到 chrome 投射:

现在我的问题是,当这个 http 服务器发布并准备好投射时,即使当我实际导航到 safari 上的路径时,chrome cast 也不会播放它,视频显示完美。除此之外,我知道 chrome cast 流式传输很好,因为它可以很好地流式传输谷歌在线示例视频。

编辑 这是我的调试日志,来自 chrome cast:

任何帮助将不胜感激。

0 投票
1 回答
865 浏览

ios - 带有 SSL 和证书的 iPhoneHTTPServer

我在我的项目中使用 iPhoneHTTPServer 示例来使用 HTTPServer,并使用 .ipa 托管一个 .plist 文件来模拟临时部署。

如您所知,从 iOS7 开始,托管文件的服务器必须受到保护,因此我尝试使用 SSL 身份验证,但失败了。

首先,服务器似乎可以正确启动,但是当我尝试像这样访问我的服务器时它失败了:

我有这个错误:

我怎样才能绕过这个错误?我试图删除 TLS 设置的 kCFStreamSSLLevel(为什么不?^^),但连接仍然无法正常工作,我有一个弹出窗口“无法连接到本地主机”或类似的东西......

关于 SSL 身份验证,示例中的 DDKeychain 类不好,因为它是 Mac 的 API,所以我使用以下代码:How to make iPhoneHTTPServer secure server,证书来自 Keychain Access,它是我用于签署我的证书的证书应用程序。也许它不是正确的证书?还是正确的代码?你知道在 iOS 中使用 SecureHTTPServer 的一个非常简单的例子吗?