使用代理解决Ionic下cros跨域问题

当我们在使用ionic serve 或者ionic run命令的时候,我们通常会出现类似下面的错误:

XMLHttpRequest cannot load http://api.ionic.com/endpoint.
No ‘Access-Control-Allow-Origin’ header is present on the requested resource.
Origin ‘http://localhost:8100’ is therefore not allowed access.

这就是cros跨域问题,对于跨域问题,我们通常的解决方案是修改服务端或者浏览器,但是有些时候会存在不便。为此ionic提供了一个代理的选项,以帮助我们解决这一问题。

ionic.config.json文件,旧版本为ionic.project文件里,增加下面的配置。

  • path:你在本地Ionic服务器上访问它们的路径
  • proxyUrl:你最终希望通过API调用达到的proxyUrl
    通常,我们会在代码定一个全局的常量,来设定api接口地址,我们可以配合gulp脚本来自动进行添加和替换操作

FTP上传超时的一种解决方案

最近有个同时的ftp总是上传文件失败,更换过各种ftp客户端和账号都没有问题,之后又怀疑是win10的问题,但是另外一个同事也是win10,同样的软件,同样的账号都没问题。后来也关过系统防火墙,windows denfender之类的,均告失败。正当准备放弃的时候,突然看到一篇文章(原文连接:https://trac.filezilla-project.org/ticket/5533#no1)是和同事的情况类似,因为他也是很小的文件可以上传,但是大于几kb之后就不能上传了,而导致这个问题的原因是和MTU有关。

 

具体来说,FTP使用两个TCP连接来通信,一条控制连接(control connection)用来提交命令和接受回复;一条数据连接(data connection)来处理实际的文件传输。在文件传输过程中,控制连接是很容易进入空闲状态的,TCP标准也没有规定一个连接的最大空闲时间。但是路由器和防火墙经常会把空闲的连接给关闭掉,并且不通知双方,就造成了传输100%但最后还是超时的现象。后面的评论就是解决问题的关键了:TCP传输过程中有最大的包上限MTU(Maximum Transmission Unit,不超过1500),超过这个大小的传输就要拆成多个包(packet)。所以比较“小”的文件不用拆包,一次就传输完了;“大”的文件需要拆包,分多次发送,就出现超时的问题。

 

好了既然找出始作俑者了,那么如何修改呢?

 

windows下

 

  • 查看MTU

`

netsh interface ipv4 show subinterfaces

`

  • 修改MTU

`

netsh interface ipv4 set subinterface “本地连接” mtu=1492 store=persistent

`

注意可能需要将本地连接替换你当前你使用的网卡的中文名称比如以太网

 

Linux/Mac下

 

  • 查看MTU

`

ifconfig | grep mtu

`

  • 修改MTU

`

sudo ifconfig en0 mtu 1492

`

 

通过上面的设置修改,发现果然ftp上传没问题了。

 

抱着好奇的态度,我又去看了下另外一个同事的电脑发现,他的 MTU也是默认的1500,为什么他可以???

 

后来又查询资料发现,原来MTU和ISP有关系,后来我又对比了下他们电脑上的dns,发现果真不一样。好吧,又学习到了不少知识。

 

 

 

 

 

 

 

 

 

Unknown table engine ‘InnoDB’的解决方案

数据库迁移后,连接数据库突然报错:

ERROR 1286 (42000): Unknown table engine ‘InnoDB’

于是查看数据库引擎。

show engines;

发现竟然没有了Innodb引擎

+————+———+—————————————————————-+————–+——+————+
| Engine | Support | Comment | Transactions | XA | Savepoints |
+————+———+—————————————————————-+————–+——+————+
| MyISAM | DEFAULT | Default engine as of MySQL 3.23 with great performance | NO | NO | NO |
| MRG_MYISAM | YES | Collection of identical MyISAM tables | NO | NO | NO |
| BLACKHOLE | YES | /dev/null storage engine (anything you write to it disappears) | NO | NO | NO |
| CSV | YES | CSV storage engine | NO | NO | NO |
| MEMORY | YES | Hash based, stored in memory, useful for temporary tables | NO | NO | NO |
| FEDERATED | NO | Federated MySQL storage engine | NULL | NULL | NULL |
| ARCHIVE | YES | Archive storage engine | NO | NO | NO |
+————+———+—————————————————————-+————–+——+————+

Innodb数据库引擎应该是好的,应该是日志错误导致的,于是删掉数据库目录下的ib_logfile*文件(ibdata不要删,千万不要删错了!),然后重启数据库,一切恢复正常。

`

`

写给Annie的四周岁生日

亲爱的Annie:

你好。

打开电脑已是接近深夜,忙碌了一天下来已是腰酸背痛,还未痊愈的脚又是疼的厉害。但是爸爸仍然决定咬牙坚持一下,为的是不留下什么遗憾。

其实想给你们写一些文字的想法由来已久,这一次借着你的四岁生日之际爸爸总算提笔而作了。也许这样的文章,对于现在的你们来说,远远没有玩具和游乐场让你们来得更加喜悦,但是对于我来说,却是意义重大。

有那么一天,爸爸曾想,如果当你们长大后,向我问起你们的童年是怎样的,爸爸该如何回答你们?也许我只会敷衍地拿出那些旧日的照片让你们自己去翻看,却无法为你们一一叙说那些发生在童年的点点滴滴。这种感觉让我觉得很不是滋味。

我记得妈妈曾经有一个很好的习惯,就是每天会为你们在qq空间里写日记,但很遗憾我们没能坚持下来,直到现在甚至连给你们写一篇文章都要熬上好几个夜晚才能完成。时光会流逝,记忆也会衰退,而有些东西终究一去不复返,所以我决定无论如何现在把这些过去记录下来,或许才是我们未来能给你们留下的最宝贵的财富。

过去的一年,经历过很多事情,重大的,平凡的,开心的,伤心的,但对于我们来说,发生在你们身上的每一天都是不一样的。当然把每一天都能统统写下也不过于现实。所以我会把那些对你们有影响或者有意义的事情尽力呈现出来。

01 上学

或许你可能暂时不太明白,当你踏入了幼儿园的大门之后,实际上就开始了你不知道多少年的学生生涯了。从终日与我们相处在一起,到一个陌生的环境里,接触到陌生的人,你需要完成身份的转变,这对你是一种挑战,对于我们也是一种考验。

最大的挑战便是如何适应幼儿园的生活。一直以来,大家都说你是一个慢热型的姑娘。这一次适应了幼儿园的生活着实花了很长时间。记得在你刚刚进入幼儿园的前半年,我们几乎每次都是看着你撕心裂肺的哭着与我们告别的。尽管在老师和阿姨的帮助下,你能在接下来的时间恢复过来。但是为人父母,看到这种情形其实是很心痛的。其实我们知道,这是安全感不足导致的,而我们也在一点点去弥补。

另外一个问题便是迟到的问题。当然这个问题上,爸爸妈妈有着不可推卸的责任,一方面没有做好表率作用,另外一方面对待时间观念的认知还不够,导致我们迟到的次数很多。但是爸爸妈妈很看重这个事情,因为时间管理也许就应该从小做起。而接下来的时间,需要我们一起来努力。

虽然遇到了一些困难,但是我相信这些东西会一一克服,到目前来说,我们已经看到了你已经基本适应了学校生活,你过得很开心,也学到了一些东西。更重要的是,你会把这些事情分享给我们,当然我们要感恩,因为这些离不开你的老师们对你的悉心照顾和辅导。

02 骑车

如果现在问你,我们出去最想做的事情是什么,你肯定会跳起来跟我说:去骑车!是的,在过去了的一年里,我们找到了一个属于我们的旅行方式:带着你们骑行去。

从第一次,我们骑着车到了美丽的千岛湖,再到环太湖,穿过天荒坪,翻过莫干山。骑过几千里的路,爬过几百米的山,遇到过不同的人,看见不一样的风景。

我们一起顶着烈日,一起淋过雨,一起吹过风,尝试在漆黑的黑夜里穿行,也尝试过在幽幽的隧道里呼喊。

我记得你曾经问过我大自然是什么,或许现在的你已经有了自己的答案。

当然,旅行的路上也是一个自我成长的过程,对于我们彼此都是如此,我们要学会的是如何在异常困难的环境下,如何地去解决问题,照顾好自己和其他人,这一点儿很难,但是令人感到欣慰的是,我们却做得越来越好。

03 朋友

另外一个明显的变化就是你越来越注重友谊了。虽然,我不知道这样表述是否完全正确。但是我觉得你已经遇到了第一个真正属于你自己童年的朋友。你们会做各种各样的游戏,在一起彼此都很开心,你们会彼此挂念着对方,并且也会毫无保留的分享。虽然这期间,也会产生矛盾和误解,但这些都最正常不过了。因为一些特殊的原因,我不知道这段时光还会持续多久,但是只要你们现在珍惜就足够了。

04 妹妹

其实,自从有了妹妹之后,我总有一种担心,害怕你会觉得我和妈妈会偏袒妹妹。所以凡事,我也希望能对你和妹妹尽量做到公平公正。所以到目前来看,你也许并没有过多的这种情绪。而随着妹妹的一天天的长大,我们甚至感觉到你逐渐地感觉到了姐姐的身份对你的意义。我们看到了你开始会照顾妹妹,引导妹妹。虽然作为父母,我们总希望姐姐能够承担更多的责任,但是对于你一个4岁的孩子来说,这或许过于沉重。但是爸爸妈妈一直给你强调你和妹妹是最亲的人,是希望你能够明白一个道理,当我和妈妈离你们而去的那一天开始,妹妹将会是陪伴你最久最亲的人。

05 大海

一次机缘巧合的机会,我们一家人都实现了第一次见到大海的梦想。相比之下,你们是幸福的,毕竟这么小就见到了大海。见到大海对于每个人都是一件激动的事情,他似乎也包含了一些意义所在。我虽然无法知晓,这个意义对于你是什么,但是我知道这将是一个最为美好的经历。我也知道,未来的你也会有更多想要去的地方,想要去做的事情,以及更为美好的梦想,但是只要心存希望,终究都会实现。

 06 爸爸

以前的我总认为,你和妹妹都太过于依恋于妈妈。按照习惯上来说,女儿应该更喜欢爸爸,但是目前来说,表明下也许并非如此,这多少也曾经让我和妈妈有些焦虑。有时候,我在想,是不是我陪你们的时间不够,但事实上我陪伴你们的时间也不少,是不是我做的还不够多,但事实上我做得其实也不少。但有些事情,也许并非要按照那样来才是对的,或许你们还需要更多的时间来接纳我。所以,即便如此,我对你们的爱的程度依旧不减,我知道,如果想在你们的心目中树立一个更好的父亲形象,我需要作出更多的努力。

在过去的一年,虽然还有太多美好的瞬间,无法一一写下,但是也有很多痛苦的回忆,却无法一一表达。这一年有太多的亲人生病,离我而去,包括爸爸妈妈也经历内心最煎熬的一段日子,但是我不想把这些东西过多地说给你们听,因为其实这也许更多的还是我们应该承担的责任和义务。其实我要感谢你们,在我们几乎要放弃的时候,是你们给予了精神动力,支撑着我们。我们也相信,一切困难终究会过去,就像这首歌里一样。

 

过去的365天,是你生命成长中的365天,也是我们与你相伴的365天,这些日子从你和我的生命长度减去,堆策成的你生活经历,演变为我们的美好记忆。当你在烛光下慢慢地许下自己的生日愿望的时候,我很想知道那个时候的你到底许下了什么愿望。但是我也不忍心去问,我希望这个美好的愿望能够埋藏在你的纯正的心里,陪伴着你接下来的时光。

生日快乐,亲爱的宝贝,晚安。