问题:在我开发了一个WPF桌面应用程序的时候,由于涉及到登录等等操作通过Fiddler可以很直观的看到账号密码.首先问题有两点:1.数据提交的时候对于密码等重要的数据没有进行加密操作.2.没有防止抓包. 那么这次我们从第二点处理出发,毕竟第一点服务端没有做处理我们客户端没办法处理.只好从第二点出发. 首先说明我使用的请求方式是HttpClient跟HttpWebRequest 简单来说Fiddler就是通过代理来抓取.那么我们只需要屏蔽掉代理,这就能达到防止被Fiddler抓的命运. 话不多说…
因为疫情影响,公司裁员,结束了一年多的web开发经历,重新开始做桌面,新公司用的是WPF(居然用的是winform style...),当然这跟本文没有关系...上篇博客写的用后台api和前台浏览器控件的方式来做桌面程序,这篇文章用nancy+cefsharp实现了一种方式,使用WPF的原因是因为winform在高分辨率屏幕上会有问题,cefsharp会显示黑边,虽然可以解决,但始终不是很好的感觉.演示界面如下: 后端API nancy是一种web后端框架,现在已经不再维护,但是功能应该说已经很…
var rootDocment = 'https://123.com';//你的域名 function postData(url, data, cb) { wx.request({ url: rootDocment + url, data: data, method: 'post', success: function (res) { return typeof cb == "function" && cb(res) }, fail: function () { ret…
原文转载自「刘悦的技术博客」https://v3u.cn/a_id_118 手机抓包是一名测试工程师常备的技能,比如我想查看一个接口请求的参数.返回值,还有移动设备上的http请求.https请求,这一次的背景是我们想要在app端和小程序端抓取一些视频,这里用腾讯视频作为例子,使用mac系统的Charles软件(有点类似win系统中的fiddler,使用方式上大同小异)来进行视频接口与地址的抓包和嗅探. 同时抓包工具也有利于线上生产环境问题的分析,前几天有个做服务端的同学跟我说他不用抓包工具,遇…
本文地址:http://blog.csdn.net/u011733020 首先,写这个仅仅是为了学习.不是要做什么违法的事情,假设有问题,有关部门 请联系我,立刻删除. 不要查我水表. 正题:这里介绍 抓包的关键.Fiddler  ,Fiddler是一个http协议调试代理工具,它可以记录并检查全部你的电脑和互联网之间的http通讯. 我们就是用这款软件抓取 ,我们手机app 訪问的 资源路径 的. 以下 我们拿实例 来演示下,怎么用fiddler 抓取数据.(以某拍为例吧). 环境: win7…
1.学习心得 当你搜到这个问题时,就表示你已经知道了脚本POST请求接口时,会先执行一次OPTIONS类型的请求.至于为什么会这样,在此就不做描述了,想知道的小伙伴可以查一下:本文主要将我在现实中遇到的问题以及怎么解决的做一个描述:这是我第一次写,不合适的地方还请见谅. 虽然说OPTIONS请求时不太重要,但服务端还是会接收并处理的,当我们忽略这次操作去写代码的时候,很大可能会栽在这里. 2.问题描述 当时我在写一个webapi类型的项目,在对项目进行允许跨域访问设置后,就开始写接口了. 设置代…
我们在请求接口的时候,有时因为跨域的问题,总是请求接口失败,亦或是请求接口时,页面还存在跳转的问题,这个时候,我们通过前台ajax请求自己的一般处理程序,用一般处理程序请求客户提供的接口 //获取token public string gettoken(HttpContext context) { string strResult = ""; try { string code = context.Request.QueryString["code"]; strin…
写在前面 之前写了一篇<微信小程序实现各种特效实例>,上次的小程序的项目我负责大部分前端后台接口的对接,然后学长帮我改了一些问题.总的来说,收获了不少吧! 现在项目已经完成,还是要陆陆续续总结一下的,总结的过程也是对知识梳理和清晰的过程! 这次主要聊一下小程序前后端接口对接的一些事, 对于客户端与服务端接口的对接,微信小程序提供了wx.request()的API接口,完美的实现前端后台的对接: 一个简单的栗子: wx.request({ url: API_URL + '/api/categor…
C# 动态创建SQL数据库(二) 使用Entity Framework  创建数据库与表 前面文章有说到使用SQL语句动态创建数据库与数据表,这次直接使用Entriy Framwork 的ORM对象关系映射来创建数据库与表 一 新建项目OrmDemo 二  添加 EntityFramework.dll 与System.Data.Entity.dll 引用,EntityFramework可直接在NuGet下载 三.创建实体类 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15…
这篇文章演示如何开发简单的 Windows Presentation Foundation (WPF) 应用程序包括元素所共有的大多数 WPF 应用程序: 可扩展应用程序标记语言 (XAML) 标记. 代码隐藏. 应用程序定义控件. 布局. 数据绑定和样式. 本演练包含以下步骤: 使用 XAML 设计应用程序的用户界面 (UI) 的外观. 编写代码以生成应用程序的行为. 创建应用程序定义管理应用程序. 添加控件并创建布局以构成应用程序 UI. 创建在应用程序的 UI 整个一致的外观样式. 绑定到…
需求 在WPF应用程序中,需要使用到WEB项目的资源,第一时间想到的就是在WPF窗口中,展现WEB项目中的页面,这样子有两点好处:一是,实现简单,不需要在WPF应用程序中实现UI布局和数据绑定:二是,灵活适应变化,需求有变化时,只需修改WEB项目,WPF项目不需要变动.事物都是两面的,有优点就有缺点,这样做的缺点是:没有充分利用WPF绚丽的界面风格. 实现 在WPF中展现WEB页面有多种实现方式,我选择最简单的一种:使用WPF自带的Frame控件. 1.主窗体: //主窗口 <Button x:…
我们在<迁移桌面程序到MS Store(4)——桌面程序调用Win10 API>提到了对Win10 API的调用,但仍存在无法在WPF中使用UWP控件的问题,虽然都是XAML控件,但却是两套命名空间下的同名类型,无法混用.人总会被现实打败,强大如某软也得向生活低头,UWP一直没有起色,某软的老大又一心去搞Azure.Windows平台的重振,似乎想走回头路,从1903版本开始,支持在.NET Framwork的WPF和WinForm工程中,直接使用部分的UWP控件了.首当其冲的,就是有点骚包的…
基于小程序请求接口 wx.request 封装的类 axios 请求 Introduction wx.request 的配置.axios 的调用方式 源码戳我 feature 支持 wx.request 所有配置项 支持 axios 调用方式 支持 自定义 baseUrl 支持 自定义响应状态码对应 resolve 或 reject 状态 支持 对响应(resolve/reject)分别做统一的额外处理 支持 转换请求数据和响应数据 支持 请求缓存(内存或本地缓存),可设置缓存标记.过期时间 u…
微信小程序request(ajax)接口请求封装 最近在进行小程序的编写,需要调用后端接口,经常要用到wx.request方法,所以就自己封装了一下,简化一下代码,如果能给大家提供帮助更好,在封装的时候我在网上看了很多篇博客,90%以上的全都是直接在success回调函数中直接打印返回值console.log(res.data)这个当然是没有问题的,但是我们都知道微信小程序的数据是实现数据绑定的,这一点和Vue框架很像,而在Vue框架的JS文件中我们可以通过 function loginSucc…
.Net 桌面程序(winform,wpf,跨平台avalonia)部署到windows 入门 本文以为avalonia为例,用Setup Factory 将.Net桌面程序(winform,wpf,跨平台avalonia)打包成windows安装包.avalonia项目创建,参考上一篇. 第一步:vs2019发布程序 第二步:打开 Setup Factory 9 新建项目(Setup Factory 自己网上下载) 1.创建打包项目: 2.填写公司,程序名称,版本号(非必填) 3.根据发布的是…
参考博客:https://blog.csdn.net/xinxinsky/article/details/80733400 C++桌面程序设置 Properties -> Build Events -> Post-Build Event -> Command Line -> 输入editbin /SUBSYSTEM:CONSOLE $(OUTDIR)\$(ProjectName).exe 测试Debug运行,可以从控制台输出调试信息,但是单独运行该程序时,没有启动控制台C++ C#…
例如postMan传String类型的json字符串请后台接口时,需要\转义…
自动更新介绍 我们做了程序,不免会有版本升级,这就需要程序有自动版本升级的功能.应用程序自动更新是由客户端应用程序自身负责从一个已知服务器下载并安装更新,用户唯一需要进行干预的是决定是否愿意现在或以后安装新的更新. 客户端程序要完成自动更新必须要做三件事情:检查是否有更新:当发现有更新时,开始下载更新:当下载完成时,执行更新操作:分别分析一下这三个步骤: 1.检查更新 客户端要正确检查是否有更新需要三个必要过程: (1)到哪里去更新.即目标服务器的URI(URL或具体目录) (2)何时去检查.即…
使用MVVM设计模式构建WPF应用程序 本文是翻译大牛Josh Smith的文章,WPF Apps With The Model-View-ViewModel Design Pattern,译者水平有限,如有什么问题请看原文,或者与译者讨论(非常乐意与你讨论). 本文讨论的内容: WPF与设计模式.MVP模式.对WPF来说为什么MVVM是更好的选择.用MVVM构建WPF程序.本文涉及的技术.WPF.数据绑定. 目录: 1引言 2有序与混乱 3模型-视图-视图模型的演变 4为什么WPF开发者喜欢M…
在上一篇<迁移桌面程序到MS Store(7)——APPX + Service>中,我们提到将desktop application拆分成UI Client+Service两部分.其中UI Client可以通过Desktop Bridge技术Pacakage成APPX,上传到MS Store以供下载,而Service则仍以传统的desktop application安装包形式提供.这样势必造成用户安装时的割裂感.本篇将就这个问题进行一些讨论. 首先我们参照上图的架构创建Sample Solut…
之前,就听过“跨域上传”图片的问题,只是疏于研究,也就一再搁置,直至今天再次遇见这个不能避免的“坑”,才不得不思考一下,怎么“跨域上传”图片或者文件? 问题来源: 何为“跨域”? ——就是给你一个接口,外面暴露的url(并非是自己项目中的url),然后你发post()请求,请求给你的接口,请求成功,接口就会返回给你想要的结果. 实际情况: 我们公司自己做的项目一般都是使用nodejs的thinkjs框架(ThinkJS 是一款使用 ES6/7 特性全新开发的 Node.js MVC 框架,使用…
传统桌面程序不能完全被web和移动端替代,但是需要改造.这里要说的是巧用webapi把以前用dll和com组件,ocx等方式做接口,做分布式开发的方式,改成restful 风格api的方式实现跨平台,多客户端(类型).并分享几则案例. 1.智能储物柜 项目背景:某智慧城市项目需要用到有智能锁的储物柜,用app扫码控制存取,并和智慧城市后台交互.智能锁系统是工业的塔式控制器,使用modbus ascii协议控制,端口使用串口.储物柜配备了工控电脑32寸竖屏,工控电脑控制塔式控制器(单片机),工控机…
当新建一个wpf应用程序,会自动生成一个App.xaml和MainWindow.xaml文件. 其中 App.xam 用来设置Application,应用程序的起始文件和资源及应用程序的一些属性和事件的设置,app.xaml.cs是处理应用程序的相关资源和事件.MainWindow.xaml是相应的窗体文件. app.xaml及app.xaml.cs主要通过操作application对象来控制应用程序. application对象包含的事件:  1) Activated 当应用程序成为前台应用程…
原文:[ASP.NET Web API教程]3.3 通过WPF应用程序调用Web API(C#) 注:本文是[ASP.NET Web API系列教程]的一部分,如果您是第一次看本博客文章,请先看前面的内容. 3.3 Calling a Web API From a WPF Application (C#) 3.3 通过WPF应用程序调用Web API(C#) 本文引自:http://www.asp.net/web-api/overview/web-api-clients/calling-a-we…
PHP做APP接口时,如何保证接口的安全性? 1.当用户登录APP时,使用https协议调用后台相关接口,服务器端根据用户名和密码时生成一个access_key,并将access_key保存在session中,将生成的access_key和session_id返回给APP端. 2.APP端将接收到的access_key和session_id保存起来 3.当APP端调用接口传输数据时,将所传数据和access_key使用加密算法生成签名signature,并将signature和session_i…
迁移桌面程序的时候,有可能你会遇到这么个需求——开机自启动.Windows传统桌面程序的传统陋习.不论什么奇葩软件都想要开机自启动,默认就给你打开,一开机哐哐哐什么雷,什么企鹅都蹦出来,也不管你用不用. 但是上班呢,老板是给钱的,只要有需求,节操什么的不重要.今天我们就来看怎么弄开机自启动……(大雾) 当然我们这里介绍的,是可以让用户随时禁用的.还有就是MS Store在审核时,会让你写需要自启动的理由.原生的UWP APP还会有一个要求授权的对话框. 首先我们还是和上一篇一样,建好一个空的WP…
写在前面 之前写了一篇<微信小程序实现各种特效实例>,上次的小程序的项目我负责大部分前端后台接口的对接,然后学长帮我改了一些问题.总的来说,收获了不少吧! 现在项目已经完成,还是要陆陆续续总结一下的,总结的过程也是对知识梳理和清晰的过程! 这次主要聊一下小程序前后端接口对接的一些事, 对于客户端与服务端接口的对接,微信小程序提供了wx.request()的API接口,完美的实现前端后台的对接: 一个简单的栗子: wx.request({ url: API_URL + '/api/categor…
前言 小程序开发,没有vue中的axios那么好使,请求层的封装需要自己来搞. 当然请求层的配置少不了loading,这里索性也就将loading做一个配置,避免以后重复造轮子 请求封装 小程序中有封装好的请求方法:wx.request(url,method,header,success,fail,complete);方法类似于原生的ajax, 这里我们大的方面分两种,一种普通请求,一种是文件上传 普通请求又分为get请求,post请求,post请求又分为JSON格式和BODY格式因此 我们需要…
Atitit.使用引擎加脚本架构的设计 使用php,js来开发桌面程序.. 1. 引擎加脚本架构 跨平台,桌面与web的优势1 2. 架构桌面引擎(java,c#)2 3. php桌面引擎要点2 3.1. 运行环境:同时支持cs桌面与web方式2 3.2. 界面使用html5+css+js实现2 3.3. Cli接口互操作,与web接口互操作2 3.4. 其他----------流程2 3.4.1. Html5界面确定要是有的后台引擎$parser=php c# java js2 3.4.2. …
如何使用程序调用webApi接口 在C#中,传统调用HTTP接口一般有两种办法: WebRequest/WebResponse组合的方法调用 WebClient类进行调用. 第一种方法抽象程度较低,使用较为繁琐:而WebClient主要面向了WEB网页场景,在模拟Web操作时使用较为方便,但用在RestFul场景下却比较麻烦,在Web API发布的同时,.NET提供了两个程序集:System.Net.Http和System.Net.Http.Formatting.这两个程序集中最核心的类是Htt…