今天早上,将项目的两个企业微信接口:登录和应用消息发送接口,做了最后的收尾工作,把目前我能解决的问题算是基本都解决了。早上还开了一个会,大意是组长封装了许多组件叫我们使用,在不断的使用中打磨组件的可用性,争取变成以后做项目通用的框架。梦想很美好,希望可以往这个目标一步步迈进吧。

  到了下午,也是没有太多工作安排,因为当前项目进入了收尾阶段,没有什么任务需要我来做,新项目也还没开工。所以,为了自己的demo,就着手开始学习git,学习了一些常用命令,打算单开一个随笔来记录git的常用命令。下午后台同事还叫我去debug,原来是Spring的项目出了问题,报错显示java.lang.InstantiationException。经求证,这一错误一般是通过反射方式创建对象时出现的,原因是没有默认的无参构造方法。然而显示的出错位置是加载spring配置文件的ApplicationContext类,所以就很莫名其妙,搞了好一会儿也没弄明白是哪里出了问题。下班前才被告知原来是他用的maven版本不支持jdk1.6...看来开发东西的时候一定要注意版本匹配的事项。

  4:30时,接到了一个需求,做两个表单页面出来。对于前端连半桶水都算不上的我只好硬着头皮上了,希望能按时做出页面。然而5:00时,就又来了一个任务,让我做出微信端的网页预览附件的功能,好吧,基本上又是前端的功能。晚上稍微弄了一下,大概是这么个流程:

  在开发过程中,又遇到了一个问题,不知道能否算前端经典问题,那就是跨域访问。因为想直接通过前端来访问微信服务器获取access_token,然后直接调用各个接口,后来发现前端访问微信服务器存在着跨域问题。跨域就是一个域上加载的脚本,不允许访问另一个域上的文档属性。只要协议、端口、域名有一个不同,就不可以访问资源,这是出于安全性考虑的对浏览器发起请求的限制。在Html5中,有script、img、link、iframe等标签可以访问跨域资源,但浏览器的脚本被限制不能跨域访问,所以不能使用XMLHttpRequest和Fetch来发起跨域请求。同源的含义如图:

  常用的解决办法是通过同源的后台服务器,来实现跨域请求,再将结果返回到前端。因为服务器之间的访问不需要遵守同源原则。当然还有别的方法可以实现,但今晚还有别的事做,就打算第二天和赶完需求的前端同事一起来做这个功能。总结一下今天,走马观花的看了git的三分之一的教程,了解了一下前端的开发和跨域访问的问题。明天就要正式开始开发前端页面和前端功能了,对于我这个基本只会后端的人来说还是有点点紧张的,希望能顺利按时完成需求,看到同组的前端同事加班的样子瑟瑟发抖...

Terence Xie

2018.7.24 周二 23:26

TW实习日记:第七天的更多相关文章

  1. TW实习日记:前三天

    今天是2018年7月20号,周五.从周一开始实习到现在,终于想起来要写日记这种东西了,可以记录一下自己这一天所学所做所知也是蛮不错的.先简单总结一下自己的大学生活吧,算是多姿多彩,体验了很多东西.在大 ...

  2. TW实习日记:第九天

    这两天有点忙,要改前端网页和加需求上去.所以昨天说的Vue缓存机制也没看,所以打算现在列个挖了的坑的清单: Vue缓存机制.生命周期和钩子函数 使用项目组自用组件来重写静态页面 SSM框架搭建.整合流 ...

  3. TW实习日记:第31-32天

    不知不觉的,实习的净工作天数,已经都超过一个月了.因为对工作内容不是很满意,所以打算月底离职,也不知道是公司太缺人还是我真的能干活,领导竟然三番两次找我让我再考虑...明天又要找我了,哎...随机应变 ...

  4. TW实习日记:第四天

    第四天 早上第一件事就是和组长说前一天的需求的事,简而言之就是两个导航栏不属于一个标签内,自定义导航栏属于<body>下的<header>,微信顶部的则是<head> ...

  5. TW实习日记:第十天

    今天任务很简单,就是出品项目的时间轴显示页面和动态路由设置.其实时间轴页面很快就做完了,在做完处理完数据之后,然而有很多细节需要打磨,这就又考验了我面向搜索引擎编程的能力,根据需求百度了很多css的样 ...

  6. TW实习日记:第八天

    今天早上主要是接着做昨天的微信端网页预览附件,听同事说当打包代码放入服务器上后,就不存在跨域问题了,也就懒得自己写接口了,那么就希望自己能一次过吧...结果写着写着,发现开发文档中关于预览文件的方法, ...

  7. TW实习日记:第六天

    今日的一整天都是在开发微信相关的接口,因为项目的系统是嵌在企业微信中,所以不可避免的要产生微信UserID和企业系统ID的匹配关系,那么就需要用手机号或是邮箱这种两边都存在的唯一参数进行匹配.然后再将 ...

  8. TW实习日记:第五天

    今天可以说是非常忙的一天了,要再项目中实现微信相关的功能:授权登录以及扫码登录,还有就是自建应用的发送消息.首先功能代码其实在经过了几天的学习之后并没有很难,但是最让我难受的是在项目中去加代码,首先s ...

  9. TW实习日记:第28天

    同前两天一样,等接口,开发,调试接口.重复地做着低级代码得搬运工作,确实挺没意思的.怪不得有些人一直说写低级代码很无聊,没有创造性和成就感.31号准备溜了,还是好好复习准备秋招吧. 挖坑清单: Vue ...

随机推荐

  1. Jmeter测试实例

    说明:测试某系统登陆功能,登陆中的验证码已被屏蔽,辅助工具Firebug. 1.打开被测系统准备好firebug,准备抓包登陆操作:

  2. JavaScript编写简单的增加与减少元素

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  3. ansible批量修改用户密码

    实现批量修改目标主机多个用户密码: --- - hosts: testchanange passwd gather_facts: false tasks: - name: change you pas ...

  4. Oracle视图View

  5. Java中的clone方法-理解浅拷贝和深拷贝

    最近学到Java虚拟机的相关知识,更加能理解clone方法的机制了 java中的我们常常需要复制的类型有三种: 1:8种基本类型,如int,long,float等: 2:复合数据类型(数组): 3:对 ...

  6. python新建一个表格xls并写入数据

    # -*- coding:utf-8 -*- import xlwt workbook = xlwt.Workbook() # 新建一个工作簿 sheet = workbook.add_sheet(& ...

  7. mvc.net路由中带特殊字符如【.*/\】等时遇到的天坑

    用mvc.net的路由做网站伪静态时出现的天坑,自己一直没测试出来,竟然要靠客户被坑了后才知道 解决办法 参考https://stackoverflow.com/questions/16581184/ ...

  8. 高性能MySQL--创建高性能的索引

    关于MySQL的优化,相信很多人都听过这一条:避免使用select *来查找字段,而是要在select后面写上具体的字段. 那么这么做的原因相信大家都应该知道:减少数据量的传输. 但我要讲的是另外一个 ...

  9. sql 事务处理 与 try catch

    begin transaction tr declare @error int; ; select * from Car_Brand set @error=@error+@@ERROR set @er ...

  10. 搭建lamp或者lnmp环境,本地链接mysql报错解决方法

    报错:1130-host...is not allowed to connect to this mysql server 解决方法: 1.改表法 可能是你的账号不允许从远程登录,这个时候只要进入服务 ...