美国100万+,丧钟为谁而鸣?

来源:文子稻

ID:wenzidao666(本文不代表本站立场)

美国100万+,丧钟为谁而鸣?
19年前,恐怖分子驾驶飞机袭击了美国标志性建筑世贸中心双塔;
19年后,川普大总统同与美军血战十几年的塔利班握手言和。
曾经,人类共同的敌人是恐怖主义。  
如今,人类共同的敌人,是病毒。
现在全球确诊人数高达300万+,死亡病例20万+。
今年1月份,当中国,我的祖国爆发疫情时,很少有人明白,新冠病毒是全球的灾难,是全世界、全人类共同的敌人。
作为世界第一强国的美利坚选择壁上观,不仅没有做任何支援,反而插着手在一旁幸灾乐祸。
这场疫情中,奉行“美国优先”(实为孤立主义)的美国遥遥领先其他国家,确诊人数突破100万!
死亡人数高达5万8千+,已经超过了越战。
这注定要载入史册。
回头再看,估计没有人否认,我们正在亲历一场规模远超二战的世界大战。几乎所有国家都被卷进其中,没人能独善其身。
1940年,那时日本还没发动珍珠港偷袭,德国还没对伦敦进行史无前例的大轰炸,但在2年多前的1937年12月,日本侵略者在中国首都南京进行了一场长达6周,有组织、有计划、有预谋惨绝人寰的大屠杀,造成中国军民30多万人遇难!
当时,美国的政治精英们,没有人认为法西斯是人类的公敌,他们忙着与法西斯的德国、日本做生意,大发战争财。不久,他们就不得不吞下傲慢与偏见的苦果。
1940年,海明威在《丧钟为谁而鸣》中写到:“所有人其实就是一个整体,别人的不幸就是你的不幸,不要以为丧钟为谁而鸣,它就是为你而鸣。”
依靠战争立国,又依靠战争发财,并逐渐掌握世界霸权的美国,全世界没有人比它更醉心于发动战争了。
自从人类发明了核武器,在核大国之间很难再发生什么大的热战。否则互相扔核弹,那可是毁天灭地的末日之战。
那么大国之争靠什么让对方屈服?
舆论战?贸易战?科技战?金融战?货币战?粮食战?基因战?生物战?……
美国发起一场对中国追责、索赔的舆论风暴,谁敢说不是用来抹黑中国、丑化中国的舆论战?
原油期货狂跌到-40美元,然后中行原油宝客户被洗劫一空,难道不是金融战的试探?
美国利用霸权肆意印刷天量美元,通过紧缩和通胀到全世界掠夺财富,吃肉不吐骨头,比任何一场战争更残酷。
美国转基因粮食对中国种子的入侵,难道不是一场蓄谋已久、更大规模的粮食战争?
基因和生物技术往往是结合在一起的,那是一种更加恐怖和隐蔽的战争。
2017年10月30日,普京公开称:有外国人有目的地采集俄罗斯人生物样本!语惊世界。
不要以为基因战离我们很远,其实,美国科研机构早就在中国打着疾病研究的旗号收集中国患者血液样本,甚至内外勾结,违规向境外运输中国人血清样本。
率先在国内报道、鼓吹瑞德西韦是抗击新冠疫情特效药的药明康德公司,正是此前因为要把5000多个中国人血清谎报为犬血清样本偷运出境而被科技部处罚的那家有外资背景的医药公司。
美国100万+,丧钟为谁而鸣?
科技部行政处罚决定书 国科罚〔2016〕1号原文链接:
https://fuwu.most.gov.cn/html/rlycxzcf/20161021/123123232.html
瑞德西韦的生产企业美国吉利德更是玄乎的离谱,比如在2003年非典时,就立即授权美国罗氏制药推出抗非典特效药“达菲”,在中国赚足了银子。而这一次,吉利德又再一次“未卜先知”的推出所谓“新冠特效药”瑞德西韦。
一次撞大运,那叫巧合,接连两次,不能不让人生疑。
尤其是在中国举国抗疫敏感时期,那铺天盖地高喊瑞德西韦是“人民的希望”的报道,更让人看到资本的力量和贪婪。
瑞德西韦不是新冠肺炎特效药吗?看看美国那近6万亡灵,为何没有挽救他们的生命?
这真是个值得深思的好问题。
这个世界,如果说哪个国家最青睐生物武器,美国要说自己第二,估计没人敢说第一。
目前,美国大约在全球25个国家,都有生物武器实验室,只不过为了掩人耳目,将其称作“公共卫生实验室”而已。
美国为何如此看好生物武器?
原因很简单:生物武器相比于化学武器,成本更加的低廉。用较低的成本,就能够神不知鬼不觉地获得意想不到的效果。
美国五角大楼曾有数据表明:用生物武器,只需要花费大约0.29美元,就能够致死大约62万人!
正因为生物武器残忍可怕的缘故,国际社会才一致推出《禁止生物武器公约》。
所以,美国发动伊拉克侵略战争,只需凭借一管洗衣粉,然后声称萨达姆拥有大规模生化武器就能获得国际上的支持。
甚至,在叙利亚战场上,只要ISIS恐怖武装稍微处于弱势时,美国凭借白头盔的自导自演所谓化学武器,就能向叙利亚政府军发射几十枚导弹。用实际行动帮助IS回血。
但是,轮到美国时,在世界横行霸道惯了,会甘心受到约束吗?
肯定不会。
近20年来,一直是美国在独家阻挡国际社会重启《禁止生物武器公约》核查议定书的谈判。
为何不肯核查自证清白?
美国给出的理由竟是“生物领域不可核查,国际核查可能威胁美国国家利益和商业机密”!
多么熟悉的借口!
但凡能与国家安全和利益扯上关系的,美国一律都摆手说NO!
这背后,美国到底隐藏着哪些致命的生物病毒?
我们不禁要问,早在2019年8月份,美国最大的生化武器基地德特里克堡为何会被紧急关闭?
美国100万+,丧钟为谁而鸣?
要知道,德特里克堡里正在进行包括埃博拉、天花和炭疽等高致命性病毒研究的。
真像华盛顿宣称那样,只是生化武器基地的地下废水泄露严重污染了水源吗?
为什么,同一时期,CNN报道当地出现多例不明肺炎?
为什么,去年哪些宣称电子烟造成的白肺病症与新冠肺炎如此相像?
美国那位到过武汉的美军女运动员,现在在哪里?究竟患上了什么病?为什么不公布?
为何疯王从来就不听从医学专家的建议,让民众戴上口罩,保持社交距离?
为何会有宣传舔马桶盖就能防病毒的脑残?
为何会有呼吁老年人“为国牺牲”的副州长?
为何美国的吹哨人和医疗专家会被堵嘴?
为什么拒接世卫组织派专家代表到美国调查?
为什么美军吹哨人的罗斯福号航母舰长布雷特·克罗泽会被免职?
为何美国疫情数据不能更加透明?
为此,文子稻不禁要问,美国为了选举和股市,究竟想隐瞒到什么时候?到底瞒报了多少?
全世界都在追问。
有人说,疯王难道疯了吗?他看不到美国疫情汹汹吗?
疯王不疯。
或许只是拿错了剧本。
我们看一下大总统最近几个月吹过的牛13:
1月15日:“我们做的很棒,我们的国家做得很棒”。
1月20日:“我们完全掌控局面”。
2月2日:“我们几乎抑制住了来自中国的病毒”。
2月10日:“4月份天气变暖的时候,能够杀死病毒”。
2月25日:“CDC和我的政府做得非常好”
2月26日:“现在是15个,过几天就减少到接近零”。
2月27日:“某天它会消失,像个奇迹一样消失”。
2月28日:“我们订购了很多物资”
2月29日:“一切都在控制之中”
3月2日:“我们会生产出疫苗,很快”,“我觉得集会没问题,我觉得非常安全”。
3月4日:“不需要去医院找医生”
3月6日:“我们的数字比任何国家都低”。
3月18日:川普承认,富人和名人确实有时会得到优待,“可能这就是人生吧。”
3月25日:“我们永远不应该依赖外国来维持我们自己的生存。”“美国永远不会成为一个求援的国家。”
真不知道疯王哪来的自信,难道真像他说的那样,没有人比他更懂新冠病毒?
或许难道他真的知道病毒来源?
或许有人告诉他,不用慌,这种病毒只攻击亚裔人,美国已经有了特效药,疫苗很快就会研发出来。
比如日本财务相麻生太郎曾吐槽,2月底在沙特利雅得召开的G20财长和央行行长会议上,欧洲国家代表就说“和我们没关系。那是黄种人的病,不是我们的病。”
纽约州长在一次疫情记者会上说过:“我们原来认为这病毒只攻击亚裔免疫系统”。(这视频很快被删掉了)
美国100万+,丧钟为谁而鸣?
有没有想过,欧美西方发达国家的政客们为何会认为这种新病毒只攻击亚裔人?
是傲慢还是偏见?还是其他原因?
疫情爆发以来,网上就流传很多阴谋论。
在文子稻看来所谓阴谋论,无非是现有条件下无法证伪,也无法证实而已。
尤其是在新科技面前,普通人有太多的未知,但这并不妨碍大家可以从常识出发大胆假设,再小心求证。
既然美国已经把中国看做最主要的战略对手,那么用什么手段来肢解中国,只是方法论的问题。
我们看看,去年美国派出顶级颠覆专家策动香港废青大搞颜色革命,还推出涉疆、涉藏、涉台、涉港法案,南海军舰“自由航行”,一个接一个的不断干涉中国内政。
然而,一切就像重量级拳手,一拳打到棉花上一样,中国依然还是那个中国,美国的阴谋没能得逞。
如果这时有人递给疯王一个木马屠城的方案,只需要一点生物病毒,就能在目标国家造成中心开花,彻底瘫痪。
你说,连自己国内死亡10万人都还吹嘘是自己功劳的疯王会怎么做?
别傻了,一个对自己人都这么狠的人,还会对默认的敌对国家心慈手软?
所以,当中国武汉在一月份爆发疫情时,美国商务部长神采飞扬的说,这有助于制造业回流美国。
原来的剧本应该是中国爆发疫情、失控、崩溃,美国进来剪羊毛。
只不过中间出了小插曲,病毒提前在美国泄漏了,而且感染了许多人。
于是为了掩盖真相,最初只是把病毒怪罪到电子烟头上,再往后,又利用冬天流感季安到流感头上。反正死的都是穷人,有钱有权者可以花钱得到及时治疗。
既然是已定方案,箭在弦上不得不发。
一队无症状感染的美国士兵来到武汉参加军运会。当武汉发现疫情后,美军立即派专机将所有运动员撤回。
疫情在武汉爆发,进而向全国扩散,计划实施完美的无可挑剔。
当中国举国封城抗疫时,美国政客就在一旁围观,连一分钱的援助都不出。
显然,嗜血的豺狼都在等着中国巨龙倒下的那一刻,好扑上来饱餐一顿。
让豺狼们没想到的是中国竟然能全国封城,14亿国人全部“禁足”在家抗疫,最后只用了2个多月的时间就把疫情控制住了。
既然西方“民主”国家做不到,凭什么中国能做到?
肯定是中国作弊了。
他们不仅倒打一耙指责中国是病毒传播者,还讥讽中国抗疫造假。
对于凭什么这个问题,《亮剑》里楚云飞也这样问过李云龙。
老李话不多,嘿嘿一笑,淡淡的说:
凭什么?凭的是对手不知道我的厉害!
世界是公平的,人在做,天在看。坏事做尽,不是不报,时候未到,时候一到,全部都报。
2月27日钟南山院士在新闻发布会上说,疫情首先出现在中国,但不一定发源在中国。
如同巨石如水,掀起千层浪。
全世界都在寻找疫情究竟发源于哪里。
人们这才想起来,早在去年10月18日,约翰霍普金斯医学中心就打着学术研究的旗号,在纽约主办了一场名为案件201的瘟疫预演,总共汇集了15名各国政商医届的核心人物。
而预演的目的就是新冠疫情一旦在美国开始蔓延,美国和其它国家该如何应对?
而参加的人员中,赫然有CIA的前副局长艾薇儿·海恩斯。
所有人都知道,CIA办案,一向谍影重重,诡计多端!

美国100万+,丧钟为谁而鸣?

难道在华府高层,早就已经觉察到美国会面临新冠疫情的威胁?
人们发现,即使美国的大流感造成上万人死亡,疯王总统的官僚们依然轻描淡写的声称可防可控,不足为患,只是一个普通感冒而已。
有人看到一篇报道,34岁的美橄榄球记者爱德华·阿绍夫,在2019年11月中旬感染神秘肺炎。
发烧、疲劳和咳嗽,后来变成多灶性肺炎,但在使用4种抗生素治疗后失败,未挺过“炎症风暴”。
于2019年12月24日去世。
而他生前健壮如牛,感染病毒也仅仅只有两周。
他的症状与普通流感根本不一样,像极了中国发生的新冠病毒肺炎。
人们还发现华府官员对发生在中国的疫情很是警惕,尤其是在中国武汉宣布封城的时候,华盛顿第一个跳出来从武汉撤侨。
甚至还宣布拒绝中国公民以及到过武汉的所有外国人入境。
美国民众无法理解,一向对全世界负责的美利坚合众国怎么突然变得胆小如鼠起来了?
真像川普说的那样,“没有人比我更懂新冠病毒”吗?
为什么总统会说这病毒会消失的,总有一天,它会像奇迹一样消失?
美国100万+,丧钟为谁而鸣?
美国人民需要了解真相!
然而,真像哪有那么容易就让你一眼看明白的。
为了大选,为了股市,为了经济,更为了掩盖自己的无能和抗疫失败,疯王决定捂盖子。
不检测、不诊断、不统计、不公布。
只要没人发现就是没发生。
美国100万+,丧钟为谁而鸣?
我不听,我不看,我不管
果不其然,当中国、亚洲、欧洲、中东都出现新冠疫情时,美国形势一片大好。无非是今年的流感严重一些罢了。
没有什么谎言不能被戳破,如果有,那一定是没遇到马云。
当国内有人还在为美国“完美”的抗疫政策高唱赞歌的时候,马云出手了。
美国100万+,丧钟为谁而鸣?
原来急人之所急的太极宗师杰克马给美国人民送来援助了。
要知道,每份试剂盒可检24人,一下送来50万份,嗯,可是够1200万美国人民检测了。
文子稻一向是佩服马爸爸的,只见他一边喊着United we stand,divided we fall(团结则存,分裂则亡),一边就像人群中的小朋友一样,指出疯王就是那个《皇帝的新衣》中的主角。
善良总能戳穿一切谎言!
这一次,疯王估计不会再大赞马云是”一位很棒、很棒的企业家,是全世界最好的企业家之一”了。
这不是心口捅刀吗?
美国还怎么再装下去?
当然了,美国还是有明白人的,比如混华尔街的那一帮精英们,就在杰克马捐赠的当天,美国就经历了历史上的再一次熔断。
他们比谁都明白,美国的疫情就像即将喷发的火山,而马云送来的哪是什么试剂盒啊,简直就是来掀疫情盖子的。
所以,美国人愤怒的说马云只用50万个试剂盒,就让美股19万亿美元化为乌有。
美国100万+,丧钟为谁而鸣?
疯王,别装了,我是你的破壁人!
其实,美国确诊人数早就突破百万了,只是因为检测能力一直刻意维持在每天15万份的水平上,所以每日新增总是在3万上下波动。
这并不是美国感染人数没有激增,纯属人为控制的检测能力不足而已。
如果美国像中国一样做到“应检尽检、应收尽收、应治尽治”,估计每日新增10万、百万都不是梦。
早在3月20号,哥伦比亚大学的研究人员通过数学模型对美国新冠疫情发展进行了预测:
如果防控失败,新冠病毒蔓延全美,峰值日新增病例可达到50万!
自己掰着手指头算算吧,这是一个何等惊人的数字!
疯王慌了。
为了掩盖自己的无能和抗疫政策的失败,他需要甩锅。
他甩锅中国、甩锅奥巴马、甩锅世卫组织、甩锅地方州行动不力…..
还脑洞大开的向美国人民推广注射消毒液抗病毒的土方!
不知道是疯王的号召力太强,还是这届美国“实在人”太多,反正一时间应者云集。
一瓶消毒液、一根皮管,一个针头,血管一插,全民抗疫就开挂。
一个真敢说,一群真敢信!
美国100万+,丧钟为谁而鸣?美国100万+,丧钟为谁而鸣?美国100万+,丧钟为谁而鸣?
黑哥一笑,生死难料!
棺一抬,土一埋,一人一句 Goodbye!
美国100万+,丧钟为谁而鸣?
没有真相能够掩盖。
自去年秋天开始,造成美国2600多万所谓流感患者,现在都不知道里面究竟有多少是新冠肺炎。
这可不是文子稻瞎说的,人家美疾控中心主任雷德菲尔德3月11日,在众议院听证会上亲口承认,一部分死于流感的美国人实为患了新冠肺炎!
雷德菲尔德主任一语惊起千层浪,吓坏了美国人,也惊骇了全世界。
美国100万+,丧钟为谁而鸣?
到现在为止,全世界都不知道美国到底是从什么时候开始爆发新冠疫情的。
而且越来越多的证据表明,新冠肺炎在美国早就发生了。
否则如何解释美国四艘航母全部有美军感染了新冠?
如何解释在水下呆了100多天的美军核动力潜艇也出现了疫情?
现在的问题是,科技发达的美国,医疗条件第一的美国,为何就不愿意做下尸检对比?美国CDC的科学家们难道都没有这方面的疑问吗?科学求真的原则哪去了?
然而,让全世界大跌眼镜的是,美国这个资本主义国家竟然开始政治挂帅了。
没有白宫副总统的授权,任何人和机构不得进行检查!
看来,一向标榜透明、人权的西式民主灯塔国,捂盖子水平也是杠杠的。
有人说,加州州长不是已经决定“开棺验尸”了吗?
真相难道还会远吗?
美国100万+,丧钟为谁而鸣?
对于有这种美好愿望的小伙伴,文子稻只能说,不要太天真。
我们要反问一句,为何加州州长纽森下令验尸官和医学检察员,只对12月以来的所有死者做尸检
 他怎么就那么笃定,疫情是从12月份才开始爆发的?
就目前得到的信息来看,纽森如果真想查找疫情真想,他更应该对去年8月份流感季以来的死者做尸检,除此之外,还要对电子烟白肺死者做尸检。
那么,纽森这么做,首先就是证明疯王抗疫政策的失败和无能。
其次,作为民主党的铁州在大选前能把川普打上无能、说谎者的烙印,对于民主党的总统候选人拜登来说,可谓大功一件。
至于,美国何时爆发新冠疫情的,目前民主党似乎也不太愿意彻底翻牌,毕竟对于美国而言可是惊天大丑闻。
他还留了一手,即使证明美国疫情在12月份之后就曾出现,民主党的拜登登上总统宝座后,依然可以联合其他国家发起对中国的“讨债”围殴。
所以,12月份这个时间点,纽森选的真是好啊。
当然,对于任何深挖美国疫情真相的行为,我们都举双手赞成,只是别寄太高希望。
我们要时刻清醒的认识到,美国驴子和大象虽然内斗不止,但是对外遏华的态度那可是异常一致的。
随着美国疫情日益严重,随着美国大选的临近,可以预料到疯王班底会更加疯狂的甩锅中国、诋毁中国!
这不,连剧本都有了。
24号,美国政治新闻网站(Politico)披露,美国共和党参议院全国委员会给竞选机构发送了一份长达57页的指南。
这份指南由共和党资深战略师撰写,目的就是通过造谣、抹黑中国来制造敌对情绪,攻击对手,从而引发美国底层群众乌合之众式的支持。
新闻一出,举世哗然,赤裸裸的惊天大丑闻!
其中强调了三条主要的攻击路线:
一是“中国掩盖真相导致病毒蔓延”;
二是民主党人“对中国态度软弱”;
三是共和党人将“因中国导致了此次疫情的传播而推动对中国的制裁。
这项指南要求共和党候选人在回答任何新冠肺炎的问题时,必须坚持不懈造谣、抹黑中国。比如当问到美国新冠肺炎失控是否是特朗普的错时,候选人必须造谣是中国隐瞒了新冠肺炎的数据。
备忘录中,还恶毒的攻击中国说“新冠病毒是中国的一次‘肇事逃逸(hit-and-run)’,随后掩盖事实,造成成千上万人死亡。”“在中国共产党的专政下,没有人比中国人民遭受的痛苦更大”“我们与他们站在一起,反对导致这场流行病的腐败政府”。
完全颠倒黑白,指鹿为马,共和党为了总统竞选,彻底不要脸了。
美国100万+,丧钟为谁而鸣?
当然了,造谣、抹黑中国的主要目的是为了黑竞选对手民主党,只有造谣民主党和中国勾结在一起,才能把民主党塑造成美国公敌,确保川普赢得连任。
其实这种手法一点都不新鲜,和4年前川普赢得总统选举的策略完全一致。
无非就是把水搞混,然后浑水摸鱼,乱中取胜。
然而谎言终归是谎言。
为了掩盖一个谎言,就需要无数个谎言来掩盖。
最终谎言还是会败露,真相仍会大白于天下。
无论美国如何抹黑、造谣,中国政府都已经站在世界面前,带领14亿中国人民付出巨大牺牲和代价,只用2个多月的时间就迅速控制住疫情,开始陆续复工复产,恢复生活。
要说现在地球上哪个地方最安全,除了地球两端的南极和北极外,恐怕只有中国了。
当下中国还要面临三大冲击的考验:
疫情冲击!
经济冲击!
政治冲击!
想一想,哪一个不是滔天巨浪?
哪一项不需要我们倾全力去应对?
虽然美国没有达到目的,但是,一轮世界范围的经济危机已经开始蔓延,严重程度甚至会远超1929年的大萧条。聪明的人们已经开始默默注视美国这个庞然大物何时会倒下。
当然,身在其中,中国也不能幸免。我们要做好准备,应对冲击带来的阵痛。
有的企业可能会就此消失,也会有更多优秀的企业实现凤凰涅槃,浴火重生。
有的人可能会失业,而新一代出类拔萃者已经开始崭露锋芒。
中国有安全稳定的社会条件,有14亿庞大的市场,有世界最好的基础设施和即将建成的5G网络,海阔凭鱼跃,天高任鸟飞,只要是人才,一定能找到自己的闪光点。
尼采说,凡杀不死我的,终将使我强大。
中国古老智慧里早就指出,祸兮福之所倚,福兮祸之所伏。
经此一役,中国体制在抗击灾害面前、在保障人民群众生命安全面前,优势无与伦比。中国人民将更加团结,更加自信的携手迎接中华民族的伟大复兴。
最后,对于破坏世界抗疫大业的,对于抹黑中国、造谣中国的,对于不关心自己国家人民生死的,送上海明威那句名言:
“不要以为丧钟为谁而鸣,它就是为你而鸣!”

作者简介:文子稻,前报社媒体人,文章视角刁钻,文笔犀利,剖析真相。个人微信公众号:文子稻(ID:wenzidao666)

转自:https://mp.weixin.qq.com/s/gc-8F0LbvmYMNOtka6bHmQ

我的股票审美标准

  今天涨停60家,跌停63家,市场从来没有这么撕裂过,风格巨大变化的同时,意味着主力在快速的调仓换股。

今天说说现阶段我选妹子,抱歉,说错了,我选股的审美标准。

我的审美标准

  标准一:屁股要大。

屁股代表流通盘,我现在不会选小于100亿流通的股,小市值的股遇到黑天鹅的风险更大,什么财务造假、产品造假,或者庄股控盘都发生在小市值的股里。

 

这个标准甚至可以提升到不小于150亿流通盘。

我知道很多人都是倾向于小市值的股,认为好拉升,很多时候蹭到题材了,还能成妖股,但是放眼A股几千家来说,真正小市值脱颖而出的少之又少,大部分都是沦落为炮灰,得不到流动性。

标准二:不能太年轻,喜欢成熟的。

去年科创板,今年创业板注册制试点,以后也许主板也会搞成注册,不出五年,A股可能会有上万家公司。

新股已经不值钱,所以没经历过时间考验的次新股都没有关注价值,至少要过半年以上,如果你还叫的出它名字,说明它杀出重围了,那就有关注价值了。

最近一年大家能叫的出名字的新股估计就这么几只:宁德时代、迈瑞医疗、中国人保、京沪高铁、药明康德、工业富联、澜起科技,还有吗?

有关注度才有流动性溢价。

标准三:前凸后翘

 

前凸后翘指的是要有拿得出手的地方,必须有亮点。

波哥是一个图形控,对图形审美要求很高,那种几连板上去的,我看都不会看一眼。再说一遍波哥擅长的模式,潜伏、波段、趋势和绩优成长

也按照以上模式去划分仓位,以前都是25%划等分,以后随着创业板注册制,会更偏重趋势和绩优成长的仓位。

波段股的完美图形就是华胜天成这种,而且它也是绩优成长。

我的审美标准

趋势股的完美图形是海螺水泥这种,从来不会跌破趋势线。

我的审美标准

绩优成长如果展开来讲就太长了,今晚就讲两点。

第一做成长股一定要分清周期性,比如说手机产业链就是有周期的,去年是周期大年,今年是周期小年,今年就算要做科技股,重心也不能放在手机产业链。

第二要警惕“业绩换挡”的风险。成长股的也增速都非常漂亮,这是东方雨虹从08年到现在的业绩增速,净利润从每年4千万,提升到了20亿,成为建材龙头,但是高速增长的同时一定要警惕“业绩换挡”。

我的审美标准

还记得前两年的老板电器吗?它连续很多年都是持续40%年增长,突然在18年的时候业绩下滑到20%的年增长,市场马上给了它雷霆之击,直到现在才缓过一口气,市场逐渐接受它20%的增速。

今晚就分享这些,我估计等下肯定有人要给我总结,结合以上几点,波哥喜欢的姑娘原来是老阿姨

我觉得这篇文章价值万金,我的审美标准基本都是贴近主力的审美标准,有了标准再去选股,可以过滤掉很多垃圾股。

光波笔记是一个开放式的公众号,你不赞赏依然可以看,只是我认为“力”的作用一定是相互的,你付出了真心,那你就会更重视我说的话,对笔记的内容也能理解的更深,最重要的是有一种对作者的反馈机制,让读者和作者之间更加良性,而不是白嫖。

转自:https://mp.weixin.qq.com/s/ajQtaZy98R54rlwl-A9GqA

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

从10年关进去到明年就要出来了

黄光裕跌宕起伏的一生就是那么传奇

在阶层固化的今天

举目望去方圆百公里

都找不到白手起家的典范!

一代枭雄的经历令人唏嘘不已

在黄光裕离去的这十年里

马云马化腾崛起争夺首富位置

美团王兴滴滴程维和字节张一鸣跃跃欲试

然而老对手苏宁股价却比10年跌了一半

市场在日切渴望黄光裕回归

当然也在怀疑廉颇老矣尚能饭否?

黄光裕快出来了,本月19号拼多多宣布溢价66.44%认购国美零售2亿美元期限三年的可转债,票面年利率为5%。初步转换价为每股1.215港元。拼多多若行使转换权,拼多多将成为国美第三大股东,约5.62%的股份。拼多多和国美的联手,以及即将刑满的黄光裕出狱,是否会再创国美曾经的辉煌??

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

整整十年了,黄光裕离开我们的时间实在是太长了,十年里发生了太多的事情,无数巨头拔地而起,而曾经的庞然大物国美苏宁也渐渐在互联网的夹击中迷失了自己的方向。

 

我们为什么有点渴望黄光裕的回归,我个人觉得有以下几点

 

1 到处都是学区房暴涨的新闻,到处都是红二代富二代炫富的新闻,首富又都是几千亿身价,每天都是被平均被刺激!我们普通人实在是活得太难受了!阶层日益固化的今天,我们太需要曾经倒下去的一个枭雄给我们再次树立一个榜样!

 

我们太需要黄光裕用实际行动告诉我们,倒下去还可以再爬起来! 

 

2 黄光裕的倒台实在有点莫名其妙,至今我也想不通身价460亿的首富会为了几个亿铤而走险,到底背后是什么原因呢?我们想知道真相

 

3 现在的国美已经几乎没有了生机,也没有了当年的话语权,我们太想知道黄光裕回来会怎么做才能重振雄风,会给我们太多的启示!

 

今天,我就想写一篇文章回忆一下黄光裕的发家史

 

1、黄光裕的成长轨迹:

 

为中国家电零售业连锁模式的创始人,黄光裕说起来也是一个传奇性的人物,1969年5月生在广东汕头潮阳区凤壶村一个穷困人家,从小为了生计,他捡过破烂,走私过家电。三教九流能赚钱的活他基本都做过,所以后来他的胆子才敢那么大。

“出了北京站,花5毛钱住一个地下旅馆,又花了1块钱让一辆三轮车拉我去找那家旅馆,找了半天,实际上他是绕了一大圈,第二天起来以后我一看北京站就在门口,还花了我1块钱!”

初来北京的黄光裕,“觉得北京大得不得了”。于是,他一整天就在北京站周围转来转去,不知道哪里是商业区,也不知道在这么大的北京城里应该怎么去做买卖。“下午两三点钟了,我就在栏杆那儿站着,看着北京站。这时有个人过来了,问我要不要拍一张照片。”黄光裕 “很奢侈地”花了10元钱,拍了一张一次成像的照片

1986年,17岁的黄光裕(那时他还叫黄俊烈)跟着哥哥黄俊钦,揣着在内蒙古攒下的4000元,又借了3万元,在北京前门珠市口东大街420号盘下一个100平方米的门面——这就是国美电器连锁店的发端。1988、1990、1993和1999年,国美电器经过4次调整扩张后,如今正步入快速成长期。

 

面对走私的质疑,黄光裕则说自己当时出售的很多国外家电主要来自北京最大的收购站——在那里有大量出国人员从国外带回来的家电产品。

 

1987年和之前的很长一段时间,中国人买家电的唯一去处就是大商场,而作为国有企业,大商场的家电定价普遍比较高,这也造成了整个行业缺乏竞争力。如何把消费者从大商场吸引到自己的小店里来呢?黄光裕想到的就是价格,他分析说,当时国有商场的家电价格过高,所以一旦一个电视机的价格相差一两千元的话,就完全能够把顾客吸引过来。

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

黑白电视可能是70后 80后最深的记忆,极少数90后比如我也有很深的印象啊

在80年代,彩电是个稀缺东西,不是有钱就能买的,还需要有票,很多黑市上的都是国外家属带过来了,一个村子里面能有一两个彩电黑白电视不得了了!

短短十多年间,国美以其低廉的价格迅速打开各地市场,所到之处刮起阵阵价格旋风,逐渐成为连锁老大。

黄光裕曾在2004、2005、2008登顶胡润中国富豪榜,在2006福布斯中国富豪榜上排名第一。当时他的身价达到了460亿元,当时马化腾身价为125亿,马云还没进入中国富豪前一百…详细过程如下图:

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

潮汕有句说有潮水的地方就有潮人,有钱赚的地方就有潮商。潮汕出了很富商,像李嘉诚,泰国正大的谢国民、泰国新首富苏旭明,香港的林百欣、刘銮雄都是潮汕人。国内比如马化腾、朱孟依、赖海明、黄楚龙、姚振华等。

 

而且潮汕人能吃苦,创业几乎都是从底层做起的:李嘉诚做过学徒,林百欣做过苦力,黄光裕初中辍学后在即没有学历也还没有一技之长的情况下就到北京从摆地摊开始创业,做老板的想法刻在潮汕人的心里,”宁做穷老板,也不做打工仔“。

当然潮汕女人也是以贤惠著称啊!娶一个潮汕女人那也是不得了的成就啊!

 2、黄光裕因何坐牢:

黄光裕在2010年5月因犯非法经营罪、内幕交易罪、单位行贿罪被判处有期徒刑14年,罚金6亿元,没收财产2亿元。刑期从2008年11月17日到2022年11月16日。2012年,黄光裕被北京市第二中级人民法院减刑十个月。2015年12月14日,北京市二中院将其刑期减去一年。两次减刑,一共减去了21个月的刑期,按理来说黄光裕应该在2021年2月出狱。

 

当年瑞士《新苏黎世报》记者猜测其很可能是”失去了政治保护“,真相是什么不得而知,法院宣判的就是黄光裕犯非法经营罪、内幕交易罪、单位行贿罪,三罪并罚,主要是:

 

1 国美海外上市期间及并购永乐期间多次行贿;名下资产注入海外壳公司过程中偷漏税;对ST金泰部分洗钱 ;

 

2 对中关村、三联商社等股价进行操纵;

 

3 通过地下钱庄秘密流动转移资产等。

 

有份胡润富豪榜报告说,过去十年内榜上有名的1330名企业家中,有19人因腐败入狱或正在等待判刑,政商关系的风险和利益同样巨大,如兴于政商关系又败于政商暗战漩涡中的红顶商人胡雪岩

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

马云曾说过他对于政商关系的理解:新型的政商关系是亲清的政商关系,既要清清白白,也要亲亲热热。新型的政商关系,应该是最大限度地发挥企业家精神,最大限度地发挥企业家的创造性和能动性,政府要为发展企业打造良好的环境。马爸爸这方面做得非常好,早早退休,对于危及银联地位的支付宝,马爸爸表示支付宝做好了随时上交国家的准备

3、  代替丈夫“垂帘执政”的杜鹃

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

这世界上最美的爱情就是烟火夫妻,荣辱与共。你赢,我陪你君临天下;你输,我替你东山再起。诠释这句话的“黄太太”杜鹃。

 

杜鹃是出生于北京高知家庭的”白富美”,毕业于北京科技大学,毕业后是北京某中国银行任放款专员。当年潮汕穷小子黄光裕去中国银行进行贷款,而杜鹃这家银行的放款专员…两个人从业务关系变发展成夫妻,并与黄光裕一起经营国美。据熟悉两者的人说杜鹃性格温和做事比黄光裕细腻,对于金融业务非常了解。而黄光裕,性格粗犷,做事情比较大开大合的个性,和黄光裕正好相反,这或许也是黄光裕入狱之后国美守业大于进攻的一个原因

 

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

黄光裕入狱后,陈晓逼宫,国美险些改朝换代,之后杜鹃临危受命,杜鹃将自己所有的能力到爆发出来,先向黄光裕的旧部寻求帮助,另一边将夺权者全部赶在门外。通过两年多的时间,杜鹃终于将夺权者全部剔除出去,重新拿回了公司的控制权。保住了黄氏江山,并从此开始黄光裕在狱中遥控指挥的国美新时代。

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

虽然守住了江山,但国美已经被苏宁、京东、天猫远远超越。2008年,黄光裕第三度成为大陆首富时,黄光裕家族资产达430亿元。而时至今日,黄氏家族资产仅为200亿元左右,比巅峰时蒸发了一半。市场份额更是急剧减少,曾经的国美是和苏宁并驾齐驱的两大电器零售巨头。但在最新发布的2019年财报显示,国美零售销售收入为594.83亿元,亏损25.9亿元。

 

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

面对国美杜鹃,格力董事长董明珠表示她挺不容易的。而且两人认识也非常多时间,双方生意也经常往来,而董明珠反复强调都是不容易。或许是女人更懂女人吧,当年 陈晓逼宫的事情闹得满城风雨,事后看陈晓真不是个东西,打工仔就是打工仔,不守本分没有把国美做好 反而想着抢创始人的资产。

 

欺负女人的男人没有什么好下场,所以陈晓离开国美之后再也没声音了。

 

有人看了我的文章马云牛皮吹破?天猫总裁蒋凡婚内出轨网红张大奕是接受性贿赂?问我,为啥蒋凡和刘强东结局不一样啊?这不是明摆着吗?一个是打工仔 一个是创始人,有本事你也办公司啊,守本分应该就是这样的道理,老板其实压力并不小,特别是今年疫情期间,其实很多老板降到打工仔了也是分分钟的事!

4、拼多多国美联手+“王者“回归,国美能否重振雄风?

黄光裕“王者归来” ,一代枭雄能否带领国美东山再起!

在市场份额方面,根据《2019年中国家电市场报告》显示,京东商城、苏宁易购、天猫分别以22.39%、18.09%、11.72%的市场份额位列前三,国美以4.88%屈居第四,而这才是家电行业排名。而且2017年开始,国美零售再度陷入亏损,从亏损4.5亿,一路亏到2018年48亿,2019年的亏损也有25亿之多。

          

2020年受疫情的影响,线下商业的冲击更加巨大。国美从今年年开始加速互联网布局,除与拼多多数次合作以外,国美还入驻京东设立旗舰店。但是,现在的国美还来的及吗,或许需要等待黄光裕归来才能知晓?黄光裕的归来能否带领国美重振雄风,我们且拭目以待。

对于拼多多和国美合作我认为是两者的互补:

1、国美零售全量商品将上架拼多多,品牌大家电将接入拼多多“百亿补贴”计划,弥补了拼多多主要以农村电商为主的业务结构,是拼多多构建全生态,全场景,全流量布局的第一步。

2、物流支持,国美旗下安迅物流将接入拼多多平台,为平台商家在大件物流、仓配一体化、安装交付等环节提供定向服务,有助于拼多多提升平台竞争力,更好的与京东、苏宁竞争。

3、2020年第一季度拼多多月活跃用户超过淘宝,国美可以获得拼多多5.8亿用户,将给国美带来非常大的线上客群。拼多多的平台流量优势以及消费趋势性大数据可以提供国美更强的竞争力。

在电商行业和家电行业均已呈现出“强者愈强,弱者更弱”的马太效应,国美已很难依靠自身力量对家电行业形成再次搅局,此时与拼多多的联合,国美加入现有的电商阵营+黄光裕出狱回归国美,给国美的“二次崛起重振雄风”带来了更多的可能性。

转自:https://mp.weixin.qq.com/s/OI1dyW500CJujzFU0xTTiQ

RESTful 入门知识

学习elasticsearch,看到REST接口,于是了解了一下REST,备忘记录一下

Elasticsearch是一个分布式的基于REST接口的为云而设计的搜索引擎

REST即Representational State Transfer的缩写,可译为”表现层状态转化”。REST最大的几个特点为:资源、统一接口、URI和无状态。 它是一种软件架构风格、设计风格,而不是标准,只是提供了一组设计原则和约束条件,它主要用于客户端和服务端交互类的软件。基于这个风格设计的软件可以更简介,更有层次,更易于实现缓存等机制。

RESTful架构风格最初由Roy T. Fielding(HTTP/1.1协议专家组负责人)在其2000年的博士学位论文中提出。HTTP就是该架构风格的一个典型应用。

作者:布莱恩特
链接:https://zhuanlan.zhihu.com/p/90367875
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

RESTful6大原则

REST之父Roy Fielding在论文中阐述REST架构的6大原则。

1. C-S架构

数据的存储在Server端,Client端只需使用就行。两端彻底分离的好处使client端代码的可移植性变强,Server端的拓展性变强。两端单独开发,互不干扰。

2. 无状态

http请求本身就是无状态的,基于C-S架构,客户端的每一次请求带有充分的信息能够让服务端识别。请求所需的一些信息都包含在URL的查询参数、header、body,服务端能够根据请求的各种参数,无需保存客户端的状态,将响应正确返回给客户端。无状态的特征大大提高的服务端的健壮性和可拓展性。

当然这总无状态性的约束也是有缺点的,客户端的每一次请求都必须带上相同重复的信息确定自己的身份和状态(这也是必须的),造成传输数据的冗余性,但这种确定对于性能和使用来说,几乎是忽略不计的。

3.统一的接口

这个才是REST架构的核心,统一的接口对于RESTful服务非常重要。客户端只需要关注实现接口就可以,接口的可读性加强,使用人员方便调用。

4.一致的数据格式

服务端返回的数据格式要么是XML,要么是Json(获取数据),或者直接返回状态码,有兴趣的可以看看博客园的开放平台的操作数据的api,post、put、patch都是返回的一个状态码 。

自我描述的信息,每项数据应该是可以自我描述的,方便代码去处理和解析其中的内容。比如通过HTTP返回的数据里面有 [MIME type ]信息,我们从MIME type里面可以知道数据的具体格式,是图片,视频还是JSON,客户端通过body内容、查询串参数、请求头和URI(资源名称)来传送状态。服务端通过body内容,响应码和响应头传送状态给客户端。这项技术被称为超媒体(或超文本链接)。

除了上述内容外,HATEOS也意味着,必要的时候链接也可被包含在返回的body(或头部)中,以提供URI来检索对象本身或关联对象。下文将对此进行更详细的阐述。

如请求一条微博信息,服务端响应信息应该包含这条微博相关的其他URL,客户端可以进一步利用这些URL发起请求获取感兴趣的信息,再如分页可以从第一页的返回数据中获取下一页的URT也是基于这个原理。

4.系统分层

客户端通常无法表明自己是直接还是间接与端服务器进行连接,分层时同样要考虑安全策略。

5.可缓存

在万维网上,客户端可以缓存页面的响应内容。因此响应都应隐式或显式的定义为可缓存的,若不可缓存则要避免客户端在多次请求后用旧数据或脏数据来响应。管理得当的缓存会部分地或完全地除去客户端和服务端之间的交互,进一步改善性能和延展性。

6.按需编码、可定制代码(可选)

服务端可选择临时给客户端下发一些功能代码让客户端来执行,从而定制和扩展客户端的某些功能。比如服务端可以返回一些 Javascript 代码让客户端执行,去实现某些特定的功能。 提示:REST架构中的设计准则中,只有按需编码为可选项。如果某个服务违反了其他任意一项准则,严格意思上不能称之为RESTful风格。

RESTful架构风格的特点

1.1.1 资源

所谓”资源”,就是网络上的一个实体,或者说是网络上的一个具体信息。它可以是一段文本、一张图片、一首歌曲、一种服务,总之就是一个具体的实在。资源总要通过某种载体反应其内容,文本可以用txt格式表现,也可以用HTML格式、XML格式表现,甚至可以采用二进制格式;图片可以用JPG格式表现,也可以用PNG格式表现;JSON是现在最常用的资源表示格式。

结合我的开发实践,我对资源和数据理解如下:

资源是以json(或其他Representation)为载体的、面向用户的一组数据集,资源对信息的表达倾向于概念模型中的数据:

  • 资源总是以某种Representation为载体显示的,即序列化的信息
  • 常用的Representation是json(推荐)或者xml(不推荐)等
  • Represntation 是REST架构的表现层

相对而言,数据(尤其是数据库)是一种更加抽象的、对计算机更高效和友好的数据表现形式,更多的存在于逻辑模型中

资源和数据关系如下:

resource vs data

1.1.2 统一接口

RESTful架构风格规定,数据的元操作,即CRUD(create, read, update和delete,即数据的增删查改)操作,分别对应于HTTP方法:GET用来获取资源,POST用来新建资源(也可以用于更新资源),PUT用来更新资源,DELETE用来删除资源,这样就统一了数据操作的接口,仅通过HTTP方法,就可以完成对数据的所有增删查改工作。

即:

  • GET(SELECT):从服务器取出资源(一项或多项)。
  • POST(CREATE):在服务器新建一个资源。
  • PUT(UPDATE):在服务器更新资源(客户端提供完整资源数据)。
  • PATCH(UPDATE):在服务器更新资源(客户端提供需要修改的资源数据)。
  • DELETE(DELETE):从服务器删除资源。

1.1.3 URI

可以用一个URI(统一资源定位符)指向资源,即每个URI都对应一个特定的资源。要获取这个资源,访问它的URI就可以,因此URI就成了每一个资源的地址或识别符。

一般的,每个资源至少有一个URI与之对应,最典型的URI即URL。

1.1.4 无状态

所谓无状态的,即所有的资源,都可以通过URI定位,而且这个定位与其他资源无关,也不会因为其他资源的变化而改变。有状态和无状态的区别,举个简单的例子说明一下。如查询员工的工资,如果查询工资是需要登录系统,进入查询工资的页面,执行相关操作后,获取工资的多少,则这种情况是有状态的,因为查询工资的每一步操作都依赖于前一步操作,只要前置操作不成功,后续操作就无法执行;如果输入一个url即可得到指定员工的工资,则这种情况是无状态的,因为获取工资不依赖于其他资源或状态,且这种情况下,员工工资是一个资源,由一个url与之对应,可以通过HTTP中的GET方法得到资源,这是典型的RESTful风格。

作者:布莱恩特
链接:https://zhuanlan.zhihu.com/p/90367875
来源:知乎
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

RESTful的7个最佳实践

1. 版本

如github开放平台 https://developer.github.com/v3/
就是将版本放在url,简洁明了,这个只有用了才知道,一般的项目加版本v1,v2,v3?好吧,这个加版本估计只有大公司大项目才会去使用,说出来不怕尴尬,我真没用过。有的会将版本号放在header里面,但是不如url直接了当。

举例

https://example.com/api/v1/

2.参数命名规范

query parameter可以采用驼峰命名法,也可以采用下划线命名的方式,推荐采用下划线命名的方式,据说后者比前者的识别度要高,可能是用的人多了吧,因人而异,因团队规范而异吧。

举例

https://example.com/api/users/today_login 获取今天登陆的用户 
https://example.com/api/users/today_login&sort=login_desc 获取今天登陆的用户、登陆时间降序排列

3.url命名规范

API 命名应该采用约定俗成的方式,保持简洁明了。在RESTful架构中,每个url代表一种资源所以url中不能有动词,只能有名词,并且名词中也应该使用复数。实现者应使用相应的Http动词GET、POST、PUT、PATCH、DELETE、HEAD来操作这些资源即可

不规范的的url,冗余没有意义,形式不固定,不同的开发者还需要了解文档才能调用。

举例

https://example.com/api/getallUsers GET 获取所有用户 
https://example.com/api/getuser/1 GET 获取标识为1用户信息 
https://example.com/api/user/delete/1 GET/POST 删除标识为1用户信息 
https://example.com/api/updateUser/1 POST 更新标识为1用户信息 
https://example.com/api/User/add POST 添加新的用户

规范后的RESTful风格的url,形式固定,可读性强,根据users名词和http动词就可以操作这些资源

举例

https://example.com/api/users GET 获取所有用户信息 
https://example.com/api/users/1 GET 获取标识为1用户信息 
https://example.com/api/users/1 DELETE 删除标识为1用户信息 
https://example.com/api/users/1 Patch 更新标识为1用户部分信息,包含在body中 
https://example.com/api/users POST 添加新的用户

4. 统一返回数据格式

对于合法的请求应该统一返回数据格式,这里演示的是json

  • code——包含一个整数类型的HTTP响应状态码。
  • status——包含文本:”success”,”fail”或”error”。HTTP状态响应码在500-599之间为”fail”,在400-499之间为”error”,其它均为”success”(例如:响应状态码为1XX、2XX和3XX)。这个根据实际情况其实是可要可不要的。
  • message——当状态值为”fail”和”error”时有效,用于显示错误信息。参照国际化(il8n)标准,它可以包含信息号或者编码,可以只包含其中一个,或者同时包含并用分隔符隔开。
  • data——包含响应的body。当状态值为”fail”或”error”时,data仅包含错误原因或异常名称、或者null也是可以的

举例

返回成功的响应json格式

{
  "code": 200,
  "message": "success",
  "data": {
    "userName": "123456",
    "age": 16,
    "address": "beijing"
  }
}

返回失败的响应json格式

{
  "code": 401,
  "message": "error  message",
  "data": null
}

下面这个ApiResult的泛型类是在项目中用到的,拓展性强,使用方便。返回值使用统一的 ApiResult 或 ApiResult 错误返回 使用 ApiResult.Error 进行返回; 成功返回,要求使用 ApiResult.Ok 进行返回

public class ApiResult: ApiResult
    {
        public new static ApiResult<T> Error(string message)
        {
            return new ApiResult<T>
            {
                Code = 1,
                Message = message,
            };
        }
        [JsonProperty("data")]
        public T Data { get; set; }
    }
    public class ApiResult
    {
        public static ApiResult Error(string message)
        {
            return new ApiResult
            {
                Code = 1,
                Message = message,
            };
        }

        public static ApiResult<T> Ok<T>(T data)
        {
            return new ApiResult<T>()
            {
                Code = 0,
                Message = "",
                Data = data
            };
        }
        /// <summary>
        /// 0 是 正常 1 是有错误
        /// </summary>
        [JsonProperty("code")]
        public int Code { get; set; }
        [JsonProperty("msg")]
        public string Message { get; set; }

        [JsonIgnore]
        public bool IsSuccess => Code == 0;
    }

5. http状态码

在之前开发的xamarin android博客园客户端的时候,patch、delete、post操作时body响应里面没有任何信息,仅仅只有http status code。HTTP状态码本身就有足够的含义,根据http status code就可以知道删除、添加、修改等是否成功。(ps:有点linux设计的味道哦,没有返回消息就是最好的消息,表示已经成功了)服务段向用户返回这些状态码并不是一个强制性的约束。简单点说你可以指定这些状态,但是不是强制的。常用HTTP状态码对照表 HTTP状态码也是有规律的

  • 1**请求未成功
  • 2**请求成功、表示成功处理了请求的状态代码。
  • 3**请求被重定向、表示要完成请求,需要进一步操作。 通常,这些状态代码用来重定向。
  • 4** 请求错误这些状态代码表示请求可能出错,妨碍了服务器的处理。
  • 5**(服务器错误)这些状态代码表示服务器在尝试处理请求时发生内部错误。 这些错误可能是服务器本身的错误,而不是请求出错。

6. 合理使用query parameter

在请求数据时,客户端经常会对数据进行过滤和分页等要求,而这些参数推荐采用HTTP Query Parameter的方式实现

比如设计一个最近登陆的所有用户
https://example.com/api/users?recently_login_day=3
搜索用户,并按照注册时间降序
https://example.com/api/users?recently_login_day=3
搜索用户,并按照注册时间升序、活跃度降序
https://example.com/api/users?q=key&sort=create_title_asc,liveness_desc
关于分页,看看博客园开放平台分页获取精华区博文列表
https://api.cnblogs.com/api/blogposts/@picked?pageIndex={pageIndex}&pageSize={pageSize} 
返回示例: 
[ 
{ 
“Id”: 1, 
“Title”: “sample string 2”, 
“Url”: “sample string 3”, 
“Description”: “sample string 4”, 
“Author”: “sample string 5”, 
“BlogApp”: “sample string 6”, 
“Avatar”: “sample string 7”, 
“PostDate”: “2017-06-25T20:13:38.892135+08:00”, 
“ViewCount”: 9, 
“CommentCount”: 10, 
“DiggCount”: 11 
}, 
{ 
“Id”: 1, 
“Title”: “sample string 2”, 
“Url”: “sample string 3”, 
“Description”: “sample string 4”, 
“Author”: “sample string 5”, 
“BlogApp”: “sample string 6”, 
“Avatar”: “sample string 7”, 
“PostDate”: “2017-06-25T20:13:38.892135+08:00”, 
“ViewCount”: 9, 
“CommentCount”: 10, 
“DiggCount”: 11 
} 
]

7. 多表、多参数连接查询如何设计URL

这是一个比较头痛的问题,在做单个实体的查询比较容易和规范操作,但是在实际的API并不是这么简单而已,这其中常常会设计到多表连接、多条件筛选、排序等。 比如我想查询一个获取在6月份的订单中大于500元的且用户地址是北京,用户年龄在22岁到40岁、购买金额降序排列的订单列表

https://example.com/api/orders?order_month=6&order_amount_greater=500&address_city=北京&sort=order_amount_desc&age_min=22&age_max=40

从这个URL上看,参数众多、调用起来还得一个一个仔细对着,而且API本身非常不容易维护,命名看起来不是很容易,不能太长,也不能太随意。

在.net WebAPI总我们可以使用属性路由,属性路由就是讲路由附加到特定的控制器或操作方法上装饰Controll及其使用[Route]属性定义路由的方法称为属性路由。

这种好处就是可以精准地控制URL,而不是基于约定的路由,简直就是为这种多表查询量身定制似的的。 从webapi 2开发,现在是RESTful API开发中最推荐的路由类型。 我们可以在Controll中标记Route

[Route(“api/orders/{address}/{month}”)]

Action中的查询参数就只有金额、排序、年龄。减少了查询参数、API的可读性和可维护行增强了。

https://example.com/api/orders/beijing/6?order_amount_greater=500&sort=order_amount_desc&age_min=22&age_max=40

这种属性路由比如在博客园开放的API也有这方面的应用,如获取个人博客随笔列表

请求方式:GET 
请求地址:https://api.cnblogs.com/api/blogs/{blogApp}/posts?pageIndex={pageIndex} 
(ps:blogApp:博客名)

认证机制

stateless-auth

由于RESTful风格的服务是无状态的,认证机制尤为重要。例如上文提到的员工工资,这应该是一个隐私资源,只有员工本人或其他少数有权限的人有资格看到,如果不通过权限认证机制对资源做一层限制,那么所有资源都以公开方式暴露出来,这是不合理的,也是很危险的。

认证机制解决的问题是,确定访问资源的用户是谁;权限机制解决的问题是,确定用户是否被许可使用、修改、删除或创建资源。权限机制通常与服务的业务逻辑绑定,因此权限机制需要在每个系统内部定制,而认证机制基本上是通用的,常用的认证机制包括 session auth(即通过用户名密码登录),basic authtoken authOAuth,服务开发中常用的认证机制为后三者。

2.1 Basic Auth

HTTP Basic authentication (BA) implementation is the simplest technique for enforcing access controls to web resources because it doesn’t require cookies, session identifier and login pages. Rather, HTTP Basic authentication uses static, standard fields in the HTTP header which means that no handshakes have to be done in anticipation.

Visit Wikipedia To Read More

简言之,Basic Auth是配合RESTful API 使用的最简单的认证方式,只需提供用户名密码即可,但由于有把用户名密码暴露给第三方客户端的风险,在生产环境下被使用的越来越少。因此,在开发对外开放的RESTful API时,尽量避免采用Basic Auth

2.2 Token Auth

Token Auth并不常用,它与Basic Auth的区别是,不将用户名和密码发送给服务器做用户认证,而是向服务器发送一个事先在服务器端生成的token来做认证。因此Token Auth要求服务器端要具备一套完整的Token创建和管理机制,该机制的实现会增加大量且非必须的服务器端开发工作,也不见得这套机制足够安全和通用,因此Token Auth用的并不多。

本文不在展开介绍Token Auth,我个人对这套机制也了解有限,有兴趣了解这套机制的同学不妨从Stack Overflow上的这篇讨论入手。

2.3 OAuth

OAuth is an open standard for authorization. OAuth provides client applications a ‘secure delegated access’ to server resources on behalf of a resource owner. It specifies a process for resource owners to authorize third-party access to their server resources without sharing their credentials. Designed specifically to work with Hypertext Transfer Protocol (HTTP), OAuth essentially allows access tokens to be issued to third-party clients by an authorization server, with the approval of the resource owner. The client then uses the access token to access the protected resources hosted by the resource server. OAuth is commonly used as a way for Internet users to log into third party websites using their Microsoft, Google, Facebook or Twitter accounts without exposing their password.

OAuth is a service that is complementary to and distinct from OpenID. OAuth is also distinct from OATH, which is a reference architecture for authentication, not a standard for authorization. However, OAuth is directly related to OpenID Connect (OIDC) since OIDC is an authentication layer built on top of OAuth 2.0.

Visit Wikipedia To Read More

OAuth(开放授权)是一个开放的授权标准,允许用户让第三方应用访问该用户在某一web服务上存储的私密的资源(如照片,视频,联系人列表),而无需将用户名和密码提供给第三方应用。

OAuth允许用户提供一个令牌,而不是用户名和密码来访问他们存放在特定服务提供者的数据。每一个令牌授权一个特定的第三方系统(例如,视频编辑网站)在特定的时段(例如,接下来的2小时内)内访问特定的资源(例如仅仅是某一相册中的视频)。这样,OAuth让用户可以授权第三方网站访问他们存储在另外服务提供者的某些特定信息,而非所有内容。

为什么要使用REST风格呢?

肯定是因为它的优点,所以才选择使用它呀。因此现在先介绍它的优点,

要介绍它的优点又要提到它的六个限制,我看其他答案只提到了限制,但是没有写限制的好处,在这里我列出限制和它的好处:

1.客户-服务器(Client-Server)客户端服务器分离

优点,提高用户界面的便携性(操作简单)

通过简化服务器提高可伸缩性(高性能,低成本)

允许组件分别优化(可以让服务端和客户端分别进行改进和优化)

2.无状态(Stateless)

从客户端的每个请求要包含服务器所需要的所有信息

优点:

提高可见性(可以单独考虑每个请求)

提高了可靠性(更容易从局部故障中修复)

提高可扩展性(降低了服务器资源使用)

3.缓存(Cachable)

服务器返回信息必须被标记是否可以缓存,如果缓存,客户端可能会重用之前的信息发送请求。

优点:

减少交互次数

减少交互的平均延迟

4.分层系统(Layered System)

系统组件不需要知道与他交流组件之外的事情。封装服务,引入中间层。

优点:

限制了系统的复杂性

提高可扩展性

5.统一接口(Uniform Interface)

优点:

提高交互的可见性

鼓励单独改善组件

6.支持按需代码(Code-On-Demand 可选)

优点:

提高可扩展性

Restful风格API 设计指南

RESTful 是目前最流行的 API 设计规范,用于 Web 数据接口的设计。

个人对restful风格API的理解即遵循restful风格和期设计原则设计的API

【以下摘至 RESTful API 设计指南 – 阮一峰的网络日志

一、协议

API与用户的通信协议,总是使用HTTPs协议

二、域名

应该尽量将API部署在专用域名之下。

https://api.example.com

如果确定API很简单,不会有进一步扩展,可以考虑放在主域名下。

https://example.org/api/

三、版本(Versioning)

应该将API的版本号放入URL。

https://api.example.com/v1/

另一种做法是,将版本号放在HTTP头信息中,但不如放入URL方便和直观。Github采用这种做法。

四、路径(Endpoint)

路径又称”终点”(endpoint),表示API的具体网址。

在RESTful架构中,每个网址代表一种资源(resource),所以网址中不能有动词,只能有名词,而且所用的名词往往与数据库的表格名对应。一般来说,数据库中的表都是同种记录的”集合”(collection),所以API中的名词也应该使用复数。

举例来说,有一个API提供动物园(zoo)的信息,还包括各种动物和雇员的信息,则它的路径应该设计成下面这样。

https://api.example.com/v1/zoos

https://api.example.com/v1/animals

https://api.example.com/v1/employees

五、HTTP动词

对于资源的具体操作类型,由HTTP动词表示。

常用的HTTP动词有下面五个(括号里是对应的SQL命令)。

GET(SELECT):从服务器取出资源(一项或多项)。

POST(CREATE):在服务器新建一个资源。

PUT(UPDATE):在服务器更新资源(客户端提供改变后的完整资源)。

PATCH(UPDATE):在服务器更新资源(客户端提供改变的属性)。

DELETE(DELETE):从服务器删除资源。

还有两个不常用的HTTP动词。

HEAD:获取资源的元数据。

OPTIONS:获取信息,关于资源的哪些属性是客户端可以改变的。

下面是一些例子。

GET /zoos:列出所有动物园

POST /zoos:新建一个动物园

GET /zoos/ID:获取某个指定动物园的信息

PUT /zoos/ID:更新某个指定动物园的信息(提供该动物园的全部信息)

PATCH /zoos/ID:更新某个指定动物园的信息(提供该动物园的部分信息)

DELETE /zoos/ID:删除某个动物园

GET /zoos/ID/animals:列出某个指定动物园的所有动物

DELETE /zoos/ID/animals/ID:删除某个指定动物园的指定动物

六、过滤信息(Filtering)

如果记录数量很多,服务器不可能都将它们返回给用户。API应该提供参数,过滤返回结果。

下面是一些常见的参数。

?limit=10:指定返回记录的数量

?offset=10:指定返回记录的开始位置。

?page=2&per_page=100:指定第几页,以及每页的记录数。

?sortby=name&order=asc:指定返回结果按照哪个属性排序,以及排序顺序。

?animal_type_id=1:指定筛选条件

参数的设计允许存在冗余,即允许API路径和URL参数偶尔有重复。比如,GET /zoo/ID/animals 与 GET /animals?zoo_id=ID 的含义是相同的。

七、状态码(Status Codes)

服务器向用户返回的状态码和提示信息,常见的有以下一些(方括号中是该状态码对应的HTTP动词)。

200 OK – [GET]:服务器成功返回用户请求的数据,该操作是幂等的(Idempotent)。

201 CREATED – [POST/PUT/PATCH]:用户新建或修改数据成功。

202 Accepted – [*]:表示一个请求已经进入后台排队(异步任务)

204 NO CONTENT – [DELETE]:用户删除数据成功。

400 INVALID REQUEST – [POST/PUT/PATCH]:用户发出的请求有错误,服务器没有进行新建或修改数据的操作,该操作是幂等的。

401 Unauthorized – [*]:表示用户没有权限(令牌、用户名、密码错误)。

403 Forbidden – [*] 表示用户得到授权(与401错误相对),但是访问是被禁止的。

404 NOT FOUND – [*]:用户发出的请求针对的是不存在的记录,服务器没有进行操作,该操作是幂等的。

406 Not Acceptable – [GET]:用户请求的格式不可得(比如用户请求JSON格式,但是只有XML格式)。

410 Gone -[GET]:用户请求的资源被永久删除,且不会再得到的。

422 Unprocesable entity – [POST/PUT/PATCH] 当创建一个对象时,发生一个验证错误。

500 INTERNAL SERVER ERROR – [*]:服务器发生错误,用户将无法判断发出的请求是否成功。

状态码的完全列表参见这里

八、错误处理(Error handling)

如果状态码是4xx,就应该向用户返回出错信息。一般来说,返回的信息中将error作为键名,出错信息作为键值即可。

{error:”Invalid API key”}

九、返回结果

针对不同操作,服务器向用户返回的结果应该符合以下规范。

GET /collection:返回资源对象的列表(数组)

GET /collection/resource:返回单个资源对象

POST /collection:返回新生成的资源对象

PUT /collection/resource:返回完整的资源对象

PATCH /collection/resource:返回完整的资源对象

DELETE /collection/resource:返回一个空文档

十、Hypermedia API

RESTful API最好做到Hypermedia,即返回结果中提供链接,连向其他API方法,使得用户不查文档,也知道下一步应该做什么。

比如,当用户向api.example.com的根目录发出请求,会得到这样一个文档。

{“link”:

    {“rel”:”collectionhttps://www.example.com/zoos“,

      “href”:”https://api.example.com/zoos“,

      “title”:”List of zoos”,

      “type”:”application/vnd.yourformat+json”

}}

上面代码表示,文档中有一个link属性,用户读取这个属性就知道下一步该调用什么API了。rel表示这个API与当前网址的关系(collection关系,并给出该collection的网址),href表示API的路径,title表示API的标题,type表示返回类型。

Hypermedia API的设计被称为HATEOAS。Github的API就是这种设计,访问api.github.com会得到一个所有可用API的网址列表。

{

“current_user_url”:”https://api.github.com/user“,

“authorizations_url”:”https://api.github.com/authorizations“,

// …

}

从上面可以看到,如果想获取当前用户的信息,应该去访问api.github.com/user,然后就得到了下面结果。

{

“message”:”Requires authentication”,

“documentation_url”:”https://developer.github.com/v3

}

上面代码表示,服务器给出了提示信息,以及文档的网址。

十一、其他

(1)API的身份认证应该使用OAuth 2.0框架。

(2)服务器返回的数据格式,应该尽量使用JSON,避免使用XML。

作者:Fairy_妍
链接:https://www.jianshu.com/p/73d2415956bd
来源:简书
著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。

读书:《 孩子看的编程启蒙书(第1辑,共4册)》

稍微空闲一点,手上正好有《 孩子看的编程启蒙书》,那就翻来看一看吧

怎么只有三本了,第4本不知道跑到哪去了

买的书太多,下次找找估计出来了

一上来就说算法,感觉还比较新颖,这也算是让小朋友从开始就认识到算法了

流程图这一册,还是不错的

每一册确实是用小朋友熟悉的例子引入新的概念,浅显易懂

大篇幅的图画,少量的文字,对于成人来说翻翻只是十来分钟的事情

算法是解决问题、实现目标的方法。 每当想做一件事(目的)时,我们都会思考该怎么做(方法),这里的方法,就是算法。算法要解决的是:按什么顺序,做什么事情。

编程:思考算法,指挥计算机去做做的事情 。是为了指挥计算机实现特定的目标,用字母和符号来编写程序。

过水洼的不同办法,就是不同的算法。

排序算法:冒泡排序,选择排序,插入排序

检索算法:二分检索,线性检索

流程图:用线条和箭头把写有文字的指令框连接起来

算法的三种基本结构 :顺序结构,条件结构,循环结构