问题标签 [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 投票
3 回答
867 浏览

ios - Objective-C/CocoaHTTPServer - 是否可以向应用程序返回响应?

我正在开发一个使用 CocoaHTTPServer 进行远程服务器通信的 iPhone 应用程序。

该应用程序会将请求详细信息发送到 CocoaHTTPServer,后者将在本地存储请求。一旦互联网连接可用,CocoaHTTPServer 会将请求发送到远程服务器并获得服务器响应,现在 CocoaHTTPServer 必须将此响应发送回应用程序,

但我很困惑如何实现它。是否有相同的应用程序间通信api?

非常感谢任何建议。

0 投票
1 回答
612 浏览

ios - Objective-C/CocoaHTTPServer - 是否可以在没有任何 UI 的情况下将 CocoaHTTPServer 作为后台应用程序运行?

我想将 CocoaHTTPServer 作为没有任何屏幕的独立后台应用程序运行。设备中的其他应用程序应该能够与此应用程序通信以实现远程服务器连接。在 iOS 技术上可行吗?非常感谢任何建议。

0 投票
0 回答
447 浏览

ios - iOS CocoaHttpServer 文件下载极慢

我目前正在 iPhone 中构建一个 http 服务器,允许 wifi 扬声器从中下载音乐。到目前为止,这是我所做的:

这是初始化http服务器的部分:

这是获取音乐文件资产 URL 的部分:

这是导入音乐文件并导出输出 url 的部分:

我的问题:

50% 的时候,要么无法从服务器下载音乐文件,要么下载速度极慢(低于 10kb/s)。我的问题是我不知道这个问题的可能原因是什么,我该如何解决这个问题。

不同的实例:

有时一开始下载速度还可以(下载速度在200+kb/s),然后什么都不做,速度会突然下降,使扬声器完全无法从服务器获取文件。请注意,没有其他设备连接到路由器,只有扬声器和电话。

有时一开始歌曲没有播放,几秒钟后开始播放。

有一次我尝试将8个扬声器连接到一个路由器,播放流畅,很好。但是在一个小时或更短的时间内,就会出现问题,就像会发生很多停止一样。

我尝试过的解决方案:


  1. 尝试连接不同类型路由器(TP-LINK、腾达、Netgear、mi等)下的所有扬声器。上述情况仍会发生。

  2. 当歌曲停止播放或接收到的数据非常慢时,我尝试重新启动应用程序,重新启动手机,甚至重新启动路由器,但一开始速度仍然很慢。

  3. 尝试断开路由器与调制解调器的连接。

  4. 尝试仅连接四台设备和一部手机。

    5.尝试关闭甚至不在同一网络下的所有其他wifi设备。

  5. 尝试更改http服务器的端口。

  6. 当问题发生时,我尝试检查连接是否消失,或者http服务器已关闭。但两者都可以。

记笔记:

我尝试使用浏览器访问该网址,下载速度与扬声器播放歌曲不流畅的时间一样慢。所以我想问题不在扬声器上。

出现问题时完全没有返回错误信息

在 NSLog 上检查时没有连接终止。

我的请求:

所以,如果你们知道可能导致这个问题的原因,请告诉我,或者更好,如果你知道这个问题的解决方案。真的很难确定问题是什么。因为没有反映错误消息,我尝试删除很多可能导致此问题的内容,但仍然没有好的结果。

任何帮助将不胜感激。

0 投票
2 回答
2122 浏览

javascript - 文件从浏览器传输到本地连接的 iPhone

现在,我在我的 iPhone 应用程序上创建了一个 HTTP 服务器,并在那里托管了 HTML。然后在与 iPhone 处于同一网络的系统的浏览器上访问它。我可以在浏览器上看到文件。

现在使用 WebSockets 我正在尝试将文件从浏览器发送到应用程序,但它不起作用。短信可以,但数据不行。作为一种解决方法,我通过 Base64 String 进行了尝试,但在这种情况下,socket Get Closed 也是如此。

为了使用 JAVAScript 上传,我编写了这段代码,在这里我尝试发送 Base64 字符串,片段大小为 200 个字符。

在 iPhone 端,我使用了来自Libary CocoaHTTPServer的WebSocket

套接字在此行关闭。

套接字在此行关闭。

编辑

经过大量的试验和错误后,我才知道如果我在 Mac 的浏览器中打开它,而不是在任何其他设备的浏览器(如 iPad、iPhone)中打开它,就会发生这种情况。这是一个非常奇怪的用例,但它是真的。

编辑二

经过很多疑惑,我找到了一个线索,这在 iPhone、iPad、iPod 和 Opera 浏览器上运行良好,因为它们有旧的 websocket 支持,我从这里找到了这个。.

在这个问题中,Guy 有相反的情况,他试图关闭这些浏览器上的连接,在我的情况下,它正在关闭其他浏览器,如 chrome、Mozilla 等。这是因为所谓的Hybi 格式数据包。这可能会帮助某人为我的案例提出解决方案。

0 投票
0 回答
285 浏览

objective-c - 简单的 https Web 服务器作为目标 C 中 Mac 的命令行应用程序

我想编写一个简单的 Web 服务器来处理 https 请求。ssl 身份将存储在钥匙串中。我可以从那里读写。

但是我怎样才能让它永远运行等待http请求并响应的应用程序呢?

我对 Mac 编程非常陌生。使用 iPhone 和 Java 的经验。

我试过CocoaHTTPServer,样本是 GUI 应用程序。当我在命令行项目中使用源代码时,它会运行并退出。如果我添加一个运行循环,它会保留。使用它的方法是否正确?

0 投票
1 回答
101 浏览

ios - Cocoa 静态库 - 一些第三方源文件无法正常工作

首先,我想澄清一下,我可能没有像我的问题标题中所说的那样清楚地解决这个问题。请原谅,因为我真的不知道如何表达。

我正在构建一个包含 Cocoa Http Server 的 Cocoa 静态库。该库构建成功,当我在项目中使用它时,我也能够使用 Cocoa Http Server 的方法。我的应用程序运行一个在 wifi 扬声器上播放音乐的 http 服务器。一旦音乐开始播放,这意味着扬声器开始从我的服务器读取数据,就会发生此错误。

在此处输入图像描述

奇怪的是,如果我将 CocoaHttpServer 添加到我的应用程序项目中。这永远不会发生。问题将得到解决。

但这真的让我很困惑。该库包含完全相同的 CocoaHttpServer,但仍然“出现无法识别的选择器”。在我的库中使用第 3 方库和在我的 App 项目中使用第 3 方库有什么区别?

我希望我能很好地解释我的情况。总结一下:

在以下情况下会出现问题:

  • 我将 CocoaHttpServer 添加到我的库项目中,构建它,然后直接将它用于我的应用程序。

问题解决时:

  • 我仍然将 CocoaHttpServer 添加到我的库项目中,构建它,但同时我也将 CocoaHttpServer 添加到我的应用程序项目中。看起来我正在导入 CocoaHttpServer 两次。

请帮忙。非常感谢!

0 投票
1 回答
196 浏览

windows-runtime - 我可以将哪些嵌入式 Web 服务器库用于 Windows RT 应用程序?

对于 android 和 iOS,我可以分别使用 nanohttpd 和 cocoahttpserver,但我似乎找不到用于 WinRT 的。

0 投票
0 回答
96 浏览

html - 当我使用 CocoaHTTPServer 共享文件时,html 文件中的图像不显示

我正在使用 CocoaHTTPServer 开发 Wi-Fi-Share 应用程序。但是没有显示html背景的图像。以下屏幕截图显示了我在代码中所做的事情。

首先,我创建一个 HTTPServe 实例并设置“webPath”。

在此处输入图像描述

其次,我将 html 文件和图像添加到 Xcode 中。

在此处输入图像描述

第三,我在我的 html 文件中设置了网站的背景。

在此处输入图像描述

第四,我打开服务的网址,一切都很好,但图像不显示。

在此处输入图像描述

0 投票
1 回答
484 浏览

ios - 使用 CocoaHTTPServer 获取共享/服务器 url

我正在创建在电视(Apple TV 或支持 HDMI 端口的显示器)上使用 chromecast 设备播放视频的应用程序。应用程序正在播放像“ https://serveraddress/video.mp4 ”这样的网址,但它没有播放存储在应用程序包中的视频(本地视频)。

我发现要在远程机器(这里是电视)上播放视频必须在 iphone 上创建本地服务器。

我找到了这个 SDK CocoaHTTPServer我已经运行了示例应用程序,但没有了解如何获取存储在应用程序包中的视频 URL。

有人可以帮助我吗?

提前致谢。

0 投票
1 回答
500 浏览

javascript - 来自 CocoaHTTPServer 的跨域 HTTP 请求

CocoaHTTPServer用来托管我自己的HTML文件。在index.html我试图对另一个资源执行请求但我无法成功执行该资源。这是我目前的设置。

然后在成功http://localhost:8090提供我的index.html文件时从浏览器加载。

然后我通过调用我的函数$(document).ready创建一个请求。AJAXstartPoll

然后我在这个方法HTTPServer中获取请求HTTPConnection.m- (void)replyToHTTPRequest

Xcode 控制台显示了这个请求。

现在我尝试向 发出新请求x-forwarded-url并将该响应作为原始响应返回,但未成功。我的done回调startPoll永远不会被调用。

有人看到我遗漏或应该尝试的任何东西吗?