2

我想构建一个基本的客户端-服务器应用程序,我的 android 智能手机可以在其中流式传输一些音频文件,这些文件保存在我的本地服务器上。

对于客户端-服务器通信,我从 REST 方法开始,所以我在 android 上使用简单的 HTTP-GET 请求,在服务器端使用 PHP 和 MySQL。HTTP-GET 请求返回一个 URL 以播放特定文件。

之后我使用这个 URL 开始播放文件:

mp.setDataSource("http://127.224.2.222/music/filename.mp3");

为此,我将音乐文件夹直接保存到 ApacheWebserver 的 www 目录中。

REST 方法是正确的方法吗?

关于安全问题,我怎样才能防止人们下载文件?(即,一旦有人知道我的 httpget 请求的地址,我认为在浏览器中很容易看到文件)

对于流式传输音乐,我现在正在使用这种简单的 HTTP 方法——RTSP 连接的优势是什么?

4

1 回答 1

0

对于 Web 服务的身份验证,请查看 OAuth2.0,这是事实上的标准。如果 OAuth 对您的程序来说太多,您可以在 URL 中添加一个简单的令牌。这仍然让您对一系列窥探攻击敞开大门,但确实增加了一点保护。

至于方法:http请求将以最高下载速度(同时牺牲延迟)下载文件并将其缓冲在您的手机上。RTP(RTSP 实际上是一种不同的协议,用于控制设备,而不是通过网络流式传输媒体)连接具有更多用于实时流式传输的协议规范,因为它具有低延迟,并且只请求缓冲区所需的下一个 x 数据包。换句话说,http 将简单地完成工作,而 RTP 是一个更优雅的解决方案。

于 2012-06-13T12:23:21.693 回答