返回顶部
首页 > 资讯 > 服务器 >IOS利用CocoaHttpServer搭建手机本地服务器
  • 533
分享到

IOS利用CocoaHttpServer搭建手机本地服务器

IOSCocoaHttpServer服务器 2022-05-19 02:05:12 533人浏览 薄情痞子
摘要

目录缘起原理实现缘起 今天用暴风影音看视频,然后发现它有个功能,wifi传片,感觉挺有意思,然后就上网查了下相关内容。 原理 使用Cocoahttpserver框架,在iOS端建

缘起

今天用暴风影音看视频,然后发现它有个功能,wifi传片,感觉挺有意思,然后就上网查了下相关内容。

原理

使用Cocoahttpserver框架,在iOS端建立一个本地服务器,只要电脑和手机连入同一热点或者说网络,就可以实现通过电脑浏览器访问ioS服务器的页面,利用POST实现文件的上传。

实现

下载CocoaHTTPServer

导入CocoaHttpServer-master目录下的Core文件夹

导入Samples/SimpleFileUploadServer目录下的MyHTTPConnection类文件和WEB文件夹

导入Vendor目录下的CocoaAsyncSocket、CocoaLumberjack文件夹

打开MyHTTPConnection.m文件,根据标记 #pragma mark multipart fORM data parser delegate 跳转或者直接找到139行的 *- (void) processStartOfPartWithHeader:(MultipartMessageHeader ) header 方法,把第151行的uploadDirPath改为


NSString *uploadDirPath = [NSSearchPathForDirectoriesInDomains(NSCachesDirectory, NSUserDomainMask, YES) lastObject];

这个路径是上传文件的存储路径

在适当的地方配置server启动。这里以AppDelegate为例


#import "AppDelegate.h"
#import <ifaddrs.h>
#import <arpa/inet.h>
#import "HTTPServer.h"
#import "DDLog.h"
#import "DDTTYLogger.h"
#import "MyHTTPConnection.h"

@interface AppDelegate ()
@property (nonatomic, strong) HTTPServer * httpServer;
@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
    
    _httpServer = [[HTTPServer alloc] init];
    [_httpServer setPort:1234];
    [_httpServer setType:@"_http._tcp."];
    // webPath是server搜寻html等文件的路径
    NSString * webPath = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"web"];
    [_httpServer setDocumentRoot:webPath];
    [_httpServer setConnectionClass:[MyHTTPConnection class]];
    NSError *err;
    if ([_httpServer start:&err]) {
        NSLog(@"port %hu",[_httpServer listeningPort]);
    }else{
        NSLog(@"%@",err);
    }
    NSString *ipStr = [self getIpAddresses];
    NSLog(@"ip地址 %@", ipStr);
    
    return YES;
}

- (NSString *)getIpAddresses{
    NSString *address = @"error";
    struct ifaddrs *interfaces = NULL;
    struct ifaddrs *temp_addr = NULL;
    int success = 0;
    // retrieve the current interfaces - returns 0 on success
    success = getifaddrs(&interfaces);
    if (success == 0)
    {
        // Loop through linked list of interfaces
        temp_addr = interfaces;
        while(temp_addr != NULL)
        {
            if(temp_addr->ifa_addr->sa_family == AF_INET)
            {
                // Check if interface is en0 which is the wifi connection on the iPhone
                if([[NSString stringWithUTF8String:temp_addr->ifa_name] isEqualToString:@"en0"])
                {
                    // Get NSString from C String
                    address = [NSString stringWithUTF8String:inet_ntoa(((struct sockaddr_in *)temp_addr->ifa_addr)->sin_addr)];
                }
            }
            temp_addr = temp_addr->ifa_next;
        }
    }
    // Free memory
    freeifaddrs(interfaces);
    return address;
}

运行后,控制台会打印出端口号和ip,在电脑端浏览器里输入ip+端口号访问即可,如果成功的话会看到如下界面:

如果上传成功,网页上会出现上传的文件名,可以在沙盒里验证文件是否上传成功

以上就是IOS利用CocoaHttpServer搭建手机本地服务器的详细内容,更多关于IOS用CocoaHttpServer搭建服务器的资料请关注编程网其它相关文章!

--结束END--

本文标题: IOS利用CocoaHttpServer搭建手机本地服务器

本文链接: https://lsjlt.com/news/30468.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • IOS利用CocoaHttpServer搭建手机本地服务器
    目录缘起原理实现缘起 今天用暴风影音看视频,然后发现它有个功能,wifi传片,感觉挺有意思,然后就上网查了下相关内容。 原理 使用CocoaHTTPServer框架,在iOS端建...
    99+
    2022-05-19
    IOS CocoaHttpServer 服务器
  • 利用node.js本地搭建HTTP服务器
    我们的目的比较简单,利用node.js在本地搭建HTTP服务器,实现hello word。 系统环境: win7 64bitIP:127.0.0.1Node.js:v6.10.2Npm:3.10.10Git...
    99+
    2022-06-04
    服务器 node js
  • 云服务器本地搭建虚拟机
    云服务器本地搭建虚拟机的方式有很多,以下是一些常见的方法: Docker容器化:使用容器技术搭建一个简单的虚拟化环境,可以将容器应用程序部署在云服务器上,从而实现本地虚拟化。 Paxos协议:使用Paxos协议,可以将所有请求映射到相同...
    99+
    2023-10-27
    虚拟机 服务器
  • 利用Android怎么搭建一个本地Tomcat服务器
    今天就跟大家聊聊有关利用Android怎么搭建一个本地Tomcat服务器,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。一、 Tomcat的下载在Tomcat官网下载这里下载的是Tom...
    99+
    2023-05-31
    android tomcat omc
  • python搭建本地服务器
    python搭建本地服务器 python3以上版本 'python3 -m http.server 8000' 默认是8000端口,可以指定端口,打开浏览器输入http://127.0.0.1:8000即可访问目录下的所有文件。 这个命令...
    99+
    2023-01-30
    服务器 python
  • 云服务器本地搭建
    云服务器本地搭建的方法主要分为两种:一种是使用云服务器提供商的服务器,另一种是使用虚拟主机。如果您是在一个个人或小型组织机构中使用云服务器本地搭建,您可以按照以下步骤进行: 选择云服务器提供商:在选择云服务器提供商之前,您需要确定哪个云...
    99+
    2023-10-26
    服务器
  • 本地云服务器搭建
    确定云服务器的大小和配置。您需要考虑您的数据存储需求,并确定您的服务器所需的带宽和存储容量。 购买云服务器。在购买云服务器之前,您需要确定您的数据中心是否可用,并考虑您的地理位置和网络连接状况。 安装云服务器的操作系统和应用程序。安装操作...
    99+
    2023-10-27
    服务器
  • nodejs web本地服务器搭建
    随着web技术的不断发展,越来越多的人开始关注如何搭建一个本地的web服务器,以方便他们进行开发和测试工作。而Node.js作为一款非常流行的服务器端开发框架,也可以用于搭建web本地服务器。本文将介绍如何使用Node.js来搭建一个简单的...
    99+
    2023-05-17
  • 手机云服务器搭建
    手机云服务器搭建是一种基于虚拟化技术的云计算服务,它可以将多个用户的计算资源统一集中管理和分配,并且用户可以随时随地通过各种设备访问并使用这些资源。在搭建手机云服务器时,通常需要考虑以下几个方面: 虚拟机管理:需要管理多个虚拟机,包括操...
    99+
    2023-10-26
    服务器 手机
  • 手机搭建云服务器
    搭建云服务器需要考虑许多因素,例如服务器的硬件配置、网络连接、数据存储等等。以下是基本的步骤: 选择云服务器品牌和产品:根据实际需求选择合适的品牌和产品,例如AWS、阿里云、谷歌云等等。不同品牌和产品之间可能会存在一些区别,需要进行比较...
    99+
    2023-10-26
    服务器 手机
  • 本地服务器转搭建云服务器
    确定云服务器的类型和版本:首先需要确定使用的云服务器类型和版本,例如,阿里云使用Ali Cloud ECS作为云服务器,而腾讯云使用DTS作为云服务器。 选择云服务器提供商:根据自身业务需求和预算,选择合适的云服务器提供商,例如阿里云、腾...
    99+
    2023-10-27
    服务器
  • 云服务器本地搭建虚拟机怎么弄
    在云服务器上搭建虚拟机可以让你更好地管理和利用服务器资源。下面是一些步骤,帮助你在云服务器上搭建虚拟机。 步骤一:选择虚拟化软件 首先,你需要选择一款虚拟化软件。常见的虚拟化软件有 VMware、VirtualBox、KVM 等。你可以根...
    99+
    2023-10-27
    怎么弄 虚拟机 服务器
  • 使用node.js如何搭建本地服务器
    这篇文章给大家分享的是有关使用node.js如何搭建本地服务器的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。注:本文章需要了解MySQL数据库的增、删、改、查命令,需手动新建仓库...
    99+
    2024-04-02
  • 用phpStudy搭建一个本地PHP服务器
    phpStudy是一个PHP调试环境的程序集成包。 该程序包集成最新的 Apache+Nginx+LightTPDPHPMySQL+phpMyAdminZend OptimizerZend Loader 一次性安装,无须配置即可使用,是非常...
    99+
    2023-09-11
    服务器 php apache
  • 搭建Git本地服务器及其使用
    搭建Git服务器 GitHub就是一个免费托管开源代码的远程仓库。但是对于某些视源代码如生命的商业公司来说,既不想公开源代码,又舍不得给GitHub交保护费,那就只能自己搭建一台Git服务器作为私有仓库使用。 搭建Git服务器需要准备一台运...
    99+
    2023-08-18
    git
  • 本地云服务器怎么搭建
    本地云服务器是一种常用的搭建在本地的服务器,它可以通过以下方式搭建: 创建一个虚拟环境:创建一个虚拟机(Virtual Private Cloud VPS),然后在该虚拟机中创建一个虚拟服务器(Virtual Server),该服务器可...
    99+
    2023-10-27
    服务器
  • 云服务器本地搭建方案
    云服务器本地搭建方案是一个常用的虚拟化技术,可以帮助用户在本地搭建云服务器以提供高可用性、高可扩展性和快速响应能力。 下面是几种云服务器本地搭建的方案: 虚拟机(VM) 使用云服务器提供的虚拟化技术,用户可以将一台物理服务器虚拟成多个...
    99+
    2023-10-27
    服务器 方案
  • 云服务器本地搭建教程
    云服务器本地搭建需要遵循一定的步骤和流程,以下是一个简单的教程,可以帮助新手快速掌握云服务器本地搭建。 步骤1:选择服务器硬件配置 在开始搭建云服务器之前,确保你已经了解了服务器的硬件配置和操作系统,这样可以确保你的云服务器能够安全、可靠...
    99+
    2023-10-27
    服务器 教程
  • 本地电脑搭建云服务器
    首先,需要了解云服务器的硬件要求。在选择云服务器时,用户需要选择能够满足自己需求的硬件。这包括服务器的内存、处理器、硬盘等硬件组件,以及服务器所需的网络连接和带宽等软件配置。 其次,需要考虑云服务器的性能要求。用户需要选择能够提供足够数据...
    99+
    2023-10-27
    服务器 电脑
  • 云服务器本地搭建方法
    选择云服务供应商 选择云服务器供应商需要考虑以下因素: 可用性:选择一个稳定可靠的云服务供应商可以帮助您减少因宕机或故障导致的数据损失。 安全性:选择一个安全的云服务供应商可以帮助您保障数据的安全,避免数据被黑客攻击或其他安全问题。...
    99+
    2023-10-28
    服务器 方法
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作