bug 发表文章不显示图片
bug 描述:
现象是我们这不能发布图片, 测试说患教方向是可以正常发布图片的(还是要感激测试,正是他们鞭策我们不断挑战困难,解决之,从而提高自己姿势水平).
图片没上传上去, 服务端协助查找发现没调上传图片的方法,服务端反馈:正确的姿势是先上传图片, 上传图片成功,返回一个图片id,然后再调发布文章的接口(安卓是这样的)
根据服务端的反馈,找上传图片的接口, 通过控制台log找到控制器,在选择培训班的页面,点发表按钮点击事件->应该调发表文章的接口,然而没有调用上传图片的接口(断点位置打错了,应该多打些断点), 上传图片方法的判断条件没走if(item.paragraphId.length == 0 && [item isImageType] && item.imageAssetURL.length > 0)
没走上传方法,别的业务方向(患教)的可以上传,他们走的是什么方法?发现他们的判断条件跟我们稍微不同
因为判断条件都不符合,所以没走上传方法. 控制台,item属性为空,看前后model传递并无问题
createArticle控制器肯定是没问题的,我们都用的一个控制器
打断点,看控制台imageAssetURL为nil --> 怀疑是modle没有传递这个字段
- 怀疑是模型传递错误,看方法是从哪调用的,往回追溯,[publish uploadArticle:weakObject.articleModel], 怀疑是这个articleModel有问题,
- HDFSelectSchoolViewController.h 选择培训班的控制器,对外公布了两个model, 实现文件中还有个model, 这么多model我当时就懵逼了,一顿赋值,啥啊
- 我们初始化控制器的时候只传递 articleModel, 谁改了什么地方? (结论是没人改)
- 怀疑是调起相册的时候没有拿到url, 看createArticle有什么改动,
- 发现他们删了一些代理方法,我给它恢复过来,运行,没效果
- 我打断点,看患教文章发布的时候走的什么接口,就发现判断条件比我们多一个
if(item.paragraphId.length == 0 && [item isImageType] && (item.imageAssetURL.length > 0 || item.imageLocalIdentifer.length > 0))
再看Git log 发现郭倩玲6/3修改过,于是我也补充上判断条件,把乾陵的代码copy过来, 把报警去掉,根据峰哥的逻辑修改这里的逻辑
- 拷贝代码, 去掉红色报错,注释掉不用的通知代码,不用的逻辑,用旧的逻辑,用关联开发代理的环境,运行测试, 其实就可以了,
- 我老是怀疑没调后台给的那个上传图片的接口,其实不是后台说的那样的, 患教方向上传图片也没调后台给的接口,而是一个flowref_uploadSound接口,当时很沮丧,
- 其实,直接连上代理,测试一下就好了,不要疑神疑鬼的,直接测
总结:
- 打断点,发现问题点,一步一步往前回溯,不要瞎猜,要顺藤摸瓜,一步一个脚印, 除非非常确定直觉
- 发生这个现象的原因是上传本机图片调用的是患教写好的方法,但是我们月底合代码的时候,合了他们的代码,我们自己的并没有修正
知行合一,多总结,别傻干蛮干
bug 发表文章不显示图片的更多相关文章
- WordPress主题开发实例:显示最新发表文章
实现效果 制作网站的时候,想在页面左栏显示最新发表的文章,如: 一.先开启侧边栏工具,在functions.php加上 $args = array( 'name' => __( '分类侧边栏') ...
- 在dedecms后台发表文章显示外部连接栏目
问题描述:客户的网站,有个顶级栏目,下面包含了几个子栏目,这个顶级栏目不想发布什么内容,点击后进入他的某个子栏目就可以了,这时候把这个顶级栏目设置为“外部连接”就可以了 但是设置顶级栏目为外部连接后, ...
- jforum发表文章和回复文章显示中文乱码问题
jforum安装时,在数据库创建jforum数据库的时候,设置了字符集(CREATE DATABASE jforum DEFAULT CHARACTER SET utf8 COLLATE utf8_g ...
- OpenCV 2.2版本号以上显示图片到 MFC 的 Picture Control 控件中
OpenCV 2.2 以及后面的版本号取消掉了 CvvImage.h 和CvvImage.cpp 两个文件,直接导致了苦逼的程序猿无法调用里面的显示函数来将图片显示到 MFC 的 Picture Co ...
- hexo配置主题发表文章
将本地hexo博客部署到github上了,如果想换我们自己喜欢的主题(默认为landscape),同时也要发表发表文章呢,下面给介绍下: 1,进入hexo官网,预览自己想要的主题,https://gi ...
- [Android] 给图像加入相框、圆形圆角显示图片、图像合成知识
前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和加入水印,继续我的"随手拍"项目完毕给图片加入相框.圆形圆角显示图片和图像合 ...
- Laravel大型项目系列教程(三)之发表文章
Laravel大型项目系列教程(三)之发表文章 一.前言 上一节教程中完成了用户管理,这节教程将大概完成发表Markdown格式文章并展示的功能. 二.Let's go 1.数据库迁移 文章模块中我们 ...
- python将图片转换为Framebuffer裸数据格式(终端显示图片)
要在ubuntu终端显示图片或者在板子的LCD显示图片,Framebuffer是一个简单易用的接口,直接写入像素信息即可. 但普通的图片带有头部信息或者编码格式不同,直接送入Framebuffer是显 ...
- Chrome 控制台新玩法-console显示图片以及为文字加样式
有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字信息.但为了把信息输出得更优雅更便于阅读,除了cosole.lo ...
随机推荐
- js 事件监听 冒泡事件
js 事件监听 冒泡事件 的取消 [自己写框架时,才有可能用到] <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitiona ...
- Session: 防止用户多次登陆
在web开发时,有的系统要求同一个用户在同一时间只能登录一次,也就是如果一个用户已经登录了,在退出之前如果再次登录的话需要报错. 常见的处理方法是,在用户登录时,判断此用户是否已经在Applicati ...
- hadoop系列讨论
生产环境下cloudera的cdh版本更受欢迎,但是貌似cloudera对于YARN的开发力度不是很突出,所以在apache与cdh版本选择的时候,大家是怎么考虑的? 主要关注生产环境下的运维成本,期 ...
- eclipse下提交job时报错mapred.JobClient: No job jar file set. User classes may not be found.
错误信息: 11/10/14 13:52:07 WARN mapred.JobClient: Use GenericOptionsParser for parsing the arguments. A ...
- linux在工作中用的比较多的几个命令
1.chmod +X qmf.txt;给qmf.txt文件添加执行的权限 2.find命令: find ./ -name "*.log" exec rm -rf { } \; ...
- ITEYE中的读书笔记:重构其实就是持续改进
原文地址:http://hawkon.iteye.com/blog/2093338#bc2355877 前段时间同事参加ITEYE的试读有奖, 没想到得了个奖,拿到一本书.由于同事的推荐我也认真读了一 ...
- JS插件
1.Placeholders.js 所有的浏览器都支持placeholder,唯独IE不支持.现在我们有了这款插件,IE下终于可以支持了! 2.Html5shiv.js 主要解决HTML5提出的新的元 ...
- Redis String命令
命令 解释 APPEND key value 如果 key 已经存在并且是一个字符串, APPEND 命令将 value 追加到 key 原来的值的末尾. 如果 key 不存在, APPEND ...
- HDU1561 The more, The Better(树形DP)
题目是有n个存有宝藏的城堡,攻克任何一个城堡都需要先攻克0个或其他1个城堡,问攻克m个城堡最多能得到多少宝藏. 题目给的城堡形成一个森林,添加一个超级根把森林连在一起就是树了,那么就考虑用树型DP: ...
- 设置完在Canvas的位置后,控件HitTest不响应的问题
have a Canvas with a couple of elements on it like Line, Path and Text Box. In the MouseOver event o ...