- emulator -avd MyNexusAPI24,其中MyNexusAPI24为模拟器名称
- 需在PATH中配置:
export PATH=“PATH:~/Library/Android/sdk/tools”,新版中添加了emulator文件夹
微信公众平台使用
官方文档
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1445241432
接口整体介绍
微信接口请求返回格式介绍:
微信接口是通过GET方式请求
返回数据格式为JSON
测试号配置
无需公众账号,可直接体验和测试公众平台所有高级接口。
配置:
- 登录公众账号
- 开发>开发者工具>公众平台测试账号
- 微信扫一扫登录
- 配置URL、TOKEN、JS接口安全域名
注意事项
- 接口频率限制说明
- 全局返回码说明
网页授权登录:
如果用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息。
两种scope模式:
- snsapi_base时只能获取到openid,静默授权,
- snsapi_userinfo时可获取到其他信息,需要用户手动同意授权的
微信公众平台(互斥)
- 编辑模式
- 开发者模式-openid
接入开发者模式步骤
为了识别用户,每个用户针对每个公众号会产生一个安全的OpenID
如果需要在多公众号、移动应用之间做用户共通,则需前往微信开放平台,将这些公众号和应用绑定到一个开放平台账号下,绑定后,一个用户虽然对多个公众号和应用有多个不同的OpenID,但他对所有这些同一开放平台账号下的公众号和应用,只有一个UnionID
公众平台以access_token为接口调用凭据,来调用接口,所有接口的调用需要先获取access_token,access_token在2小时内有效,过期需要重新获取,但1天内获取次数有限,开发者需自行存储
公众平台接口调用仅支持80端口。
网页授权获取用户基本信息:通过该接口,可以获取用户的基本信息(获取用户的OpenID是无需用户同意的,获取用户的基本信息则需用户同意)
微信JS-SDK:是开发者在网页上通过JavaScript代码使用微信原生功能的工具包,开发者可以使用它在网页上录制和播放微信语音、监听微信分享、上传手机本地图片、拍照等许多能力。
调试接口可能需要取消关注之后才能看到最新的效果
https://blog.csdn.net/z496007165/article/details/73239971
http://www.php.cn/xiaochengxu-405121.html
网页授权接口:
授权回调页面域名:没有http,如:http://89495c4f.ngrok.io是错误的,应该是: 89495c4f.ngrok.io
https://blog.csdn.net/kingmax54212008/article/details/50811885
https://www.cnblogs.com/hoobey/p/6078584.html
微信第三方登录
https://mp.weixin.qq.com/wiki?t=resource/res_main&id=mp1421140842
用户在微信客户端中访问第三方网页,公众号可以通过微信网页授权机制,来获取用户基本信息,进而实现业务逻辑。
open id:在关注者与公众号产生消息交互后,公众号可获得关注者的open id, 同一个用户,在不同公众号或移动应用下对应有不同open id标识;
union id:同一个用户,在不同公众号或移动应用下unionID相同;前提是,如若需要做多个公众号以及移动应用账户互通,得到唯一身份标识union id,则需要将多个公众号或移动应用在微信开放平台进行绑定,然后我们才能给拿到union id;
微信联合登录;也就是我们常用的微信移动端/PC端之间的扫码登录,PC端用微信扫码登录,微信移动端确认授权登录后,应用可以从微信拿到用户的open id或union id,将微信获取的用户信息与自己账户体系中的用户身份进行关联;
授权登录:需要用户确认登录,这样可以通过用户的个人确认,获取用户全面的信息,无论是否关注相关微信公众号等都可以获取。
ASP.NET WebForms学习笔记
申明
文章内容记录自:http://www.w3school.com.cn/aspnet/aspnet_intro.asp, 为个人学习笔记记录。
说明
WebForms可类比WinForm开发,通过可视化拖动的方式快速完成Web页面开发.
ASP.NET MVC学习笔记
申明
文章内容记录自:http://www.w3school.com.cn/aspnet/mvc_intro.asp, 为个人学习笔记记录。
MVC项目文件夹
典型的 ASP.NET MVC web 应用程序拥有如下文件夹内容:
1 | 应用程序信息 |
控制器位于 Controllers 文件夹,视图位于 Views 文件夹,模型位于 Models 文件夹。您不必在应用程序代码中使用文件夹名称
控制器Controllers
- web 服务器通常会将进入的 URL 请求直接映射到服务器上的磁盘文件.某个 URL 请求(比如 “http://www.abc.cn/index.asp”)将映射到服务器根目录上的文件 “index.asp”。
MVC 框架的映射方式有所不同。
- MVC 将 URL 映射到方法。这些方法在类中被称为“控制器”。控制器负责处理进入的请求、处理输入、保存数据、并把响应发送回客户端。
- 在mvc中所有的controller类都必须使用"Controller"后缀来命名,并且对Action也有一定的要求:
- 必须是一个public方法
- 必须是实例方法
- 没有标志NonActionAttribute特性的(NoAction)
- 不能被重载
- 必须返回ActionResult类型
具体可返回数据类型请参考:https://blog.csdn.net/pasic/article/details/7110134
模型Models
模型包含所有应用程序逻辑(业务逻辑、验证逻辑、数据访问逻辑),除了纯视图和控制器逻辑。
HTML帮助器
HTML 帮助器用于修改 HTML 输出。
HTML 链接
通过 MVC,Html.ActionLink() 不连接到视图。它创建控制器操作(controller action)的连接。
HTML 表单元素
- BeginForm()
- EndForm()
- TextArea()
- TextBox()
- CheckBox()
- RadioButton()
- ListBox()
- DropDownList()
- Hidden()
- Password()
1 | <%= Html.ValidationSummary("Create was unsuccessful. Please correct the errors and |
MVC参考手册
Razor使用
申明
文章内容记录自:http://www.w3school.com.cn/aspnet/razor_intro.asp, 为个人学习笔记记录。
说明
Razor 是一种允许您向网页中嵌入基于服务器的代码的标记语法。Razor 基于 ASP.NET,它为 web 应用程序的创建而设计。
当网页被写入浏览器时,基于服务器的代码能够创建动态内容。在网页加载时,服务器在向浏览器返回页面之前,会执行页面内的基于服务器代码。由于是在服务器上运行,这种代码能执行复杂的任务,比如访问数据库。
C# 的主要 Razor 语法规则
- Razor 代码块由 @{ … } 包围
- 行内表达式(变量和函数)以 @ 开始
- 代码语句以分号结束
- 变量通过 var 关键词进行声明
- 字符串用引用来包围
- C# 代码对大小写敏感
- C# 文件的扩展名是 .cshtml
编程
Razor编程支持变量、循环、逻辑。
变量
1 | var myString = '103'; |
循环
1 | <body> |
1 | <body> |
1 | <body> |
1 | @{var price=25;} |
1 | @{ |
ASP.NET WebPages学习笔记
申明
文章内容记录自:http://www.w3school.com.cn/aspnet/webpages_intro.asp, 为个人学习笔记记录。
说明
Web Pages 是三种 ASP.NET 编程模型中的一种,用于创建 ASP.NET 网站和 web 应用程序。
布局
在因特网上,您会发现很多拥有统一外观的网站:
- 每页拥有相同的页眉
- 每页拥有相同的页脚
- 每页拥有相同的样式和布局
可以通过以下方式实现:
- 使用 @RenderPage() 方法从不同的文件导入内容
1 | <html> |
- 使用布局页面
布局网页包含网页的结构,而不是内容。当网页(内容页)链接到布局页时,它会根据布局页(模板)来显示。布局页类似普通的网页,但是会在引用内容页的位置调用 @RenderBody() 方法。每个内容页必须以 Layout 指令开头。
布局页面:
1 | <html> |
任意网页:
1 | @{Layout="Layout.cshtml";} |
防止代码泄露
在 ASP.NET 中,名称以下划线开头的文件无法通过 web 来浏览。如果您希望禁止用户查看内容块或布局文件,请对文件重新命名,如:_Layout.cshtml
~ 操作符 与 Href 方法
- 使用 ~ 操作符在编程代码中规定虚拟根目录,作为项目资源路径根路径,如:var myImagesFolder = “~/images”;
- Href 方法把代码中的路径转换为浏览器能够理解的路径(浏览器无法理解 ~ 操作符),如:
1 | @{var myStyleSheet = "~/Shared/Site.css";} |
Page对象
Page对象为内置对象,类似与JSP中的Request等对象
方法 | 描述 |
---|---|
href | 使用指定的参数构建 URL。 |
RenderBody() | 在布局页中,将呈现不在指定部分中的内容页部分。 |
RenderPage(page) | 在其他页内呈现某一页的内容。 |
RenderSection(section) | 在布局页中,将呈现指定部分的内容。 |
Write(object) | 将指定的对象作为 HTML 编码的字符串写入。 |
WriteLiteral | 无需先对指定的对象进行 HTML 编码,即可将其写入。 |
属性 | 描述 |
---|---|
isPost | 返回一个值(true 或 false),指示客户端用来请求网页的 HTTP 数据传输方法是否为 POST 请求。 |
Layout | 获取或设置布局页的路径。 |
Page | 提供对页面、布局页和分页之间共享的页数据的类似属性的访问。 |
Request | 获得当前 HTTP 请求的 HttpRequest 对象。 |
Server | 获取 HttpServerUtility 对象,该对象所提供的方法能够在网页处理过程中使用。 |
Web Pages帮助器
Web Helpers 极大地简化了 web 开发和常见的编程任务。其内部实现了表格、图表等内容显示的逻辑及样式,进行了特定封装。
Web Pages参考手册
ASP.NET简介
申明
文章内容记录自:http://www.w3school.com.cn/aspnet/index.asp, 为个人学习笔记记录。
简介
ASP.NET 是一个开发框架,用于通过 HTML、CSS、JavaScript 以及服务器脚本来构建网页和网站。
ASP.NET 是新一代的 ASP。它无法兼容经典 ASP,但 ASP.NET 可以引用 ASP。
当浏览器请求 ASP.NET 文件时,ASP.NET 引擎读取该文件,编译并执行文件中的脚本,然后以纯 HTML 向浏览器返回结果。
ASP.NET 支持三种开发模式/服务器技术:
- Web Pages:单页面模型
- MVC:模型视图控制器
- Web Forms:事件驱动模型
ASP.NET 文件扩展名
- ASP 文件的文件扩展名是 .asp
- ASP.NET 文件的文件扩展名是 .aspx
- ASP.NET 文件使用 C# 语法的文件扩展名是 .cshtml
- ASP.NET 文件使用 Razor VB 语法的文件扩展名是 .vbhtml
版本区别
-
2009年发行ASP.NET MVC 1.0版
-
2010年发行ASP.NET MVC 2.0版,VS2010
-
2011年发行ASP.NET MVC 3.0版+EF4,需要.Net4.0支持,VS2011
-
2012年发行ASP.NET MVC 4.0版+EF5,需要.Net4.0支持,VS2012
-
2013年发行ASP.NET MVC 5.0版+EF6,需要.Net4.5支持,VS2013
-
2015年发行ASP.NET MVC 6.0版+EF7,需要.Net5.0支持,VS2015
-
Entity Framework 7.0 将改名为 Entity Framework Core 1.0
-
.NET新的跨平台版本将命名为.NET Core 1.0
推荐文章
WebForms vs. MVC: http://www.cnblogs.com/heyuquan/p/webForms-vs-mvc.html