错误引起原因是清理了package cache下的msi文件

I've been searching for a solution to this problem and finally figured it out so here it is for others still in the dark:

  1. open up regedit (start --> run --> regedit)
  2. navigate to HKEY_LOCAL_MACHINE\SOFTWARE\Classes\Installer\Products
  3. Search for "Microsoft Security Client" which should be a subbranch of the above directory

    • it will look like "some random string"\SourceList\ which contains Media and Net
  4. Right Click on that random string and select Export to back it up in case something breaks
  5. Right Click on that random string and select Delete
  6. Rerun the installer

This worked for me, and it will also work for any program that gives an error like this, not just Microsoft Security Essentials

Cheers,
Dragos

根据 HTML5 规范,在没有其他合适标签更合适时,才应该把 <b> 标签作为最后的选项。HTML5 规范声明:应该使用  来表示标题,使用  标签来表示强调的文本,应该使用  标签来表示重要文本,应该使用 <mark> 标签来表示标注的/突出显示的文本。

面向资源的架构roa

Resource- oriented architecture

四个属性

可寻址性addressability

在URI里面有query或者本身(像本博客的文章链接)

无状态性 statelessness

无法返回,可能违反了无状态性

连通性 connectedness

可以让应用进入其他状态,甚至进入其他应用的其他状态

统一接口 uniform interface

Get, post, put, delete, head, options

head

Head比get就是缺少返回的实体主体.
可以检查资源是否存在而不必下载实体主体

options

看可以对一个资源作哪些操作

post

在rest式设计中post通常被用于创建 从属资源(subordinate resources),即从属于父资源而存在的资源,例如本博客程序作为一个资源,而文章就是从属资源。
因此我可以向父资源(博客)发送post请求,这种用法被称为post(a) 表示append 添加。

重载的post(p) p:process

在post里面放一堆东西,可能并不是真的在post而是在处理其他的事情,比如delete

安全性和幂等性(idempotence)

安全性

如果能按照原来的用意暴露统一接口,那么用户在使用get,不用害怕修改掉服务器的资源。
(有时的副作用)有的时候客户端使用get请求,服务器会计数+1(记访客数,或者记录日志)等影响不会很大。且客户端不知道会产生此副作用

幂等性(idempotence)

一个操作无论执行多少次,结果总是一样的。
例如任何数乘以0都等于0。
一个资源put以后还是一个资源。
一个资源delete后它就不存在了,无论删除多少次,它都不存在。
幂等性对实践提出的要求是:客户端可以通过put把数值设置为4,0,6。但是不允许直接对资源+1,例如0两次put后就成了2。该操作不满足幂等性。

为什么

如果在一个非可靠网络上,收到了两次put,即使前一个已经被处理了,再处理一次也不会有任何副作用。
post不是安全的,也不是幂等的。可以参考贴吧回复的时候可能会抽风,回复了两次。
误用:请不要通过get暴露非安全操作。
Google在2005年发布了一个Web accelerator,可以 prefetch 页面的链接。。。然后可想而知,如果有一个delete操作使用的是get,用户在打开自己的页面时,不知情的状况下就会删除自己的数据。

Web性能权威指南读书笔记

HTTP0.9(非官方名)

请求只有一行,返回超文本响应
91年

HTTP1.0

响应response不限于超文本
请求可以有多行首部字段构成
每次请求都会关闭
多了响应状态(200这样的)
96年左右

HTTP1.1

持久连接,分块编码传输,字节范围请求,增强的缓存机制,传输编码
97,99年

HTTP2

更快的速度,书上没有介绍太多,只有目标是低延迟高吞吐
现在已经有了,很不错。