`

WEB前端开发数据模拟工具JOJO

 
阅读更多

 

注:图片见压缩包中的word文档!

前端数据模拟工具V1.0(JOJO)

一、什么是JOJO

JOJO是一个简单的数据模拟服务器,可以模拟前端页面与后端数据交互的模拟,类似于MOCOJOJO本身的开发灵感来自于MOCO框架,个人认为MOCO配置相对复杂,需要了解的东西比较多,现在基于MOCOdemo也比较少,而且不支持JSONP的形式!(我所需要的是对应的一个URI我能模拟一个我想要的响应数据这就满足我的要求了)这个基于Java开发的开源项目(支持桌面应用,支持配置文件路径切换和端口切换)!

二、为什么要开发这个工具!

集成,尤其是基于 HTTP 协议的集成——web serviceREST 等,在我们的项目开发中被广泛应用。以前,我们每次都要往 Jetty JBOSS Tomcat 等应用服务器上部署一个新的 WAR。大家都知道,开发部署一个 WAR 的过程是很枯燥的,即使在嵌入式服务器上也是如此。而且,每次我们做一点改动,整个 WAR 都要重新组装。JOJO的出现,正是为了解决这些问题。开发团队只要根据自己的需要进行相应的配置,就会很方便得到一个模拟服务器。而且,由于 JOJO本身的灵活性,其用途已经不再局限于最初的集成测试,比如JOJO可以用于前端开发,JOJO 还可以用于移动开发,模拟尚未开发的服务;以及应用接入数据的模拟!模拟一个完整的 Web 服务器,等等!(对于前端开发的话,可能不需要有web容器的支持,由UED提供简单的DEMO文件夹,再通过接入后端服务将后端数据展示出最终渲染页面,从中就会遇到一些跨域的问题!如果纯粹只是为了这样一个目的解决跨域,因为MOCO中无法提供的JSONP支持,所以也就引燃了开发这个模拟工具的导火线!

 

三、为什么叫工具而不是框架

个人认为只是一个工具!是不是框架不作讨论!

 

四、JOJO这个工具的使用

桌面版

适用于windows系统(经测试)

<!--[if !supportLists]-->1、  <!--[endif]-->先安装好jdk!

<!--[if !supportLists]-->2、  <!--[endif]-->启动服务界面:

直接双击启动或者命令行输入java -jar SimulateDataTool.jar 会出现如下界面:

1)、工具

启动界面

<

工具说明

1Config folder path:配置文件存放路径,默认为SimulateDataTool.jar所在文件夹位置!

2Select Folder:选择配置文件存放路径!

3Server IP…:服务器IP地址:配置必须为所在机器的IP或者为127.0.0.1,默认为127.0.0.1

4Server Port:服务器端口号!为未使用的端口号,默认为8888

5Start Service:启动web监听服务

6Stop Service:停止web监听服务

 

命令行版:

适用于windows系统和unix系统(经测试)

1、 安装好jdk!

2、  启动服务:

命令行输入java -jar SimulateDataTool.jar 127.0.0.1 8888 ,参数为必填项!参数1为监听服务器IP地址,参数2为监听服务器端口号

3、服务启动成功界面


配置文件的编写

1、 Hello World 为例(对于程序员举例亘古不变的名词)

1)、配置文件名称以.json结尾,服务启动的时候程序会扫描对应配置文件路径下的所有匹配*.json格式的文件,读取相关配置!

2)、最基本的参数变量,格式以json格式提供:如:

{

"request":{   //request参数:请求配置参数

      "method":"get",//请求方式  目前支持get  post  默认为get

      "type":"json",//请求类型 jsonjsonp  text  html  当请求为json或者jsonp的时候response返回的内容为{“key:value”}json格式,其中当为jsonp的时候会根据传入的hpjsonpcall或者jsonpcallback两个参数的存在于否生成jsonp对应的函数类似于jsonpcallback({“key”:”value”}); 当请求为text的时候response对应输出的是字符串,如”response”:”<h1>Hello World</h1>”  则最终web请求生成的页面内容为“&lt;h1&gt; Hello World&lt;/h1&gt;”经过转义的内容; 当请求为html的时候response对应输出的是字符串,如”response”:”<h1>Hello World</h1>”  则最终web请求生成的页面内容为原样输出“<h1>Hello World</h1>;若此type参数不作配置,则输出也为html! 默认为html

      "uri":"/mobile/mobileOrder.do",//需要拦截响应的uri请求

      "params":{"param1":"paramValue2","param2":"paramValue2"…} //request请求的参数,暂时对配置请求参数各web请求参数名称进行匹配,暂时不对参数值进行检验,如果名称不匹配则输出错误提示!默认为无参数

},

"response":””||{//response响应参数  request中的type请求类型决定输出

    "status":"success",//success 成功 ,fail 失败 ,login  需要登录  三种状态为标准定义,也可以由需求扩展定义,可以自由发挥

      "msg":"Hello World",  //成功或者失败返回的消息

      "data":{} //其它需要返回的对象  

…}

}

 

<1>Demo1 最简配置

{"request":{

"uri":"/mobile/index.do"

},

"response":"Hello World"

}

<2>Demo2 模拟手机充值返回订单信息

{"request":{

 “method”:”post”,

"uri":"/mobile/index.do",

 “params”:{“mobile”:”13816085314”,”confirm”:”13816085314”,”value”:”50.00”},

“type”:”json”

},

"response":{“status”:”success”,

”msg”:”订单信息获取成功!”,

”order”:{“orderId”:”111”,”orderDate”:”20140815104622”,”value”:”50”…}

“backends”:{“backendcode”:”ccb”,”backendName”:”建行支付方式”}

}

}

 

访问WEB服务

http://127.0.0.1:8888/mobile/mobileOrder.do?mobile=13816085314

协议://IP地址:商品号/uri?params

通过访问不同的URI得到不同的response结果

如:

Typetext


Typejson


Typejsonp


Typehtml


参数名称未匹配


Ngnix配置,模拟真实环境以及https的配置

ngnix配置文件中增加配置:

1、增加模拟数据服务器的监听配置:

    upstream simulateData{

      server 127.0.0.1:8888;

}


2、 80端口监听配置处增加对应应用的访问配置,模拟真实环境数据返回


Ngnix配置之后流程模拟


https的配置

ngnixhttps 443端口:


Ngnix配置之后的参数不匹配错误

 

1
0
分享到:
评论

相关推荐

    Jojo_0226.7z

    标题“Jojo_0226.7z”暗示这是一个7z格式的压缩文件,其中可能包含一个或多个与“Jojo”相关的程序或数据。7z是一种高效的数据压缩格式,通常用于打包软件、游戏或其他文件集合,因为它能提供比ZIP更好的压缩率。 ...

    iOS实例开发源码——jojo312-NumbersTo1-7d30242.zip

    这个压缩包文件“iOS实例开发源码——jojo312-NumbersTo1-7d30242.zip”显然包含了一个iOS应用的源代码,由开发者jojo312创建,版本号可能是7d30242。这个应用可能是一个简单的教育或练习项目,目标是展示如何在iOS...

    jojo_js:前端相关的js库 ,组件,工具等

    "jojo_js" 是一个专门收集前端开发中使用的JavaScript库、组件和工具的资源集合。这个压缩包"jojo_js-master"很可能包含了源代码、示例、文档和其他相关材料,帮助开发者在JavaScript项目中实现各种功能。下面我们将...

    JOJO绿幕特效-木大木大木大

    总的来说,"JOJO绿幕特效-木大木大木大"提供了将JOJO元素融入个人视频的便捷方式,借助专业的视频编辑工具和预先处理的绿幕素材,即使是初级用户也能轻松实现专业级别的视觉效果。通过学习和掌握这种技术,不仅可以...

    JOJO绿幕特效-但是我拒绝

    总之,这个资源为JOJO粉丝和视频创作者提供了一个有趣的工具,让他们能够利用岸边露伴的经典台词和形象,创造属于自己的独特视频作品。通过熟练运用绿幕技术和视频编辑软件,用户可以在自己的创作中加入这一动漫元素...

    jojo过验证(1).zip

    jojo过验证(1).zip

    10大移动开发框架

    在智能手机开发领域,移动Web开发框架扮演着至关重要的角色。随着科技的进步,传统的桌面网页正逐步让位于更加便捷的移动网站,使得开发者需要不断挑战自我,掌握新技术来应对这一变化。移动Web开发框架旨在帮助...

    JOJO绿幕特效-ダメ出しするジョルノ・ジョバァーナ

    "JOJO绿幕特效-ダメ出しするジョルノ・ジョバァーナ" 是一个专为JOJO系列爱好者提供的资源,它允许用户将JOJO角色融入到自己的视频作品中,通过绿幕技术实现创新的视觉效果。这个资源特别适用于熟悉视频剪辑和后期...

    jojo.rar_edit_show

    标题 "jojo.rar_edit_show" 暗示了这是一个与 Delphi 编程相关的压缩包,其中包含了用于展示如何编辑数据并更新到数据库的源代码。Delphi 是一种基于 Object Pascal 的集成开发环境(IDE),常用于创建桌面应用程序...

    Python库 | sample_jojo-0.1.1_rc8-py2-none-any.whl

    总结来说,"sample_jojo-0.1.1_rc8-py2-none-any.whl"是一个Python 2的轮子文件,它代表了一个名为sample_jojo的库的开发版本。虽然Python 2已不再被官方支持,但该库可能是为了向后兼容或特定项目需求。要使用这个...

    JOJO绿幕特效-跳新宝岛的乔鲁诺

    视频剪辑软件如Adobe Premiere Pro、Final Cut Pro或DaVinci Resolve等都提供了强大的绿幕处理工具。它们可以精确地选择和分离绿色背景,通过调整边缘平滑度、羽化程度以及色彩对比度来确保主体与新背景的自然融合。...

    [jojozhai]Spring Security开发安全的REST服务源码完整版

    在本资源 "[jojozhai]Spring Security开发安全的REST服务源码完整版" 中,你将获得一套完整的Spring Security源代码,用于实现REST服务的安全防护。 1. **身份验证**:Spring Security的核心功能之一是用户身份验证...

    JOJO色指定

    色指定

    Jojo Siwa Wallpaper & Jojo HD Theme-crx插件

    Jojo Siwa 2019主题高清 LovelyTab的Jojo Siwa壁纸和Jojo HD主题扩展。 安装它以获得最大的浏览体验。 免费打开有趣的新闻,事实并玩游戏,同时享受自己喜欢的高清主题和壁纸。 使用方法:-此Jojo Siwa 2019 ...

    labview写的模拟液晶屏显示的程序

    总的来说,LabVIEW的模拟液晶屏显示功能结合字符串输入和Excel数据读取,为实验数据分析、设备控制等领域提供了强大的工具。通过这样的实践,你不仅可以掌握基本的LabVIEW编程技巧,还能了解到如何将这些技能应用于...

    为Hackthon比赛创建.zip

    5. **前端开发**:用户界面和用户体验是Hackathon作品能否吸引评委的关键。HTML、CSS和JavaScript(包括现代库如React、Vue.js)是构建交互式前端的常用技术。 6. **后端开发**:后端处理业务逻辑和数据存储。Node....

    RohanKishibeSimulator:体验成为JoJo漫画家的感觉

    《RohanKishibeSimulator》是一款以日本著名漫画《JoJo的奇妙冒险》中的角色——罗翰·奇斯比(Rohan Kishibe)为主题的模拟游戏。在游戏中,玩家可以尝试扮演这位独具慧眼的漫画家,感受创作过程中的挑战与乐趣。这...

    iOS游戏应用源代码——jojo312-NumbersTo1-7d30242.zip

    《iOS游戏应用源代码分析——基于...同时,这个过程也是对苹果开发工具Xcode的一次实战训练,加深对Apple生态系统和开发流程的理解。因此,无论你是iOS开发的新手还是有经验的开发者,此项目都能提供有价值的学习材料。

Global site tag (gtag.js) - Google Analytics