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 发表文章不显示图片的更多相关文章

  1. WordPress主题开发实例:显示最新发表文章

    实现效果 制作网站的时候,想在页面左栏显示最新发表的文章,如: 一.先开启侧边栏工具,在functions.php加上 $args = array( 'name' => __( '分类侧边栏') ...

  2. 在dedecms后台发表文章显示外部连接栏目

    问题描述:客户的网站,有个顶级栏目,下面包含了几个子栏目,这个顶级栏目不想发布什么内容,点击后进入他的某个子栏目就可以了,这时候把这个顶级栏目设置为“外部连接”就可以了 但是设置顶级栏目为外部连接后, ...

  3. jforum发表文章和回复文章显示中文乱码问题

    jforum安装时,在数据库创建jforum数据库的时候,设置了字符集(CREATE DATABASE jforum DEFAULT CHARACTER SET utf8 COLLATE utf8_g ...

  4. OpenCV 2.2版本号以上显示图片到 MFC 的 Picture Control 控件中

    OpenCV 2.2 以及后面的版本号取消掉了 CvvImage.h 和CvvImage.cpp 两个文件,直接导致了苦逼的程序猿无法调用里面的显示函数来将图片显示到 MFC 的 Picture Co ...

  5. hexo配置主题发表文章

    将本地hexo博客部署到github上了,如果想换我们自己喜欢的主题(默认为landscape),同时也要发表发表文章呢,下面给介绍下: 1,进入hexo官网,预览自己想要的主题,https://gi ...

  6. [Android] 给图像加入相框、圆形圆角显示图片、图像合成知识

        前一篇文章讲述了Android触屏setOnTouchListener实现突破缩放.移动.绘制和加入水印,继续我的"随手拍"项目完毕给图片加入相框.圆形圆角显示图片和图像合 ...

  7. Laravel大型项目系列教程(三)之发表文章

    Laravel大型项目系列教程(三)之发表文章 一.前言 上一节教程中完成了用户管理,这节教程将大概完成发表Markdown格式文章并展示的功能. 二.Let's go 1.数据库迁移 文章模块中我们 ...

  8. python将图片转换为Framebuffer裸数据格式(终端显示图片)

    要在ubuntu终端显示图片或者在板子的LCD显示图片,Framebuffer是一个简单易用的接口,直接写入像素信息即可. 但普通的图片带有头部信息或者编码格式不同,直接送入Framebuffer是显 ...

  9. Chrome 控制台新玩法-console显示图片以及为文字加样式

    有兴趣的同学可以文章最后的代码复制贴到控制台玩玩. Go for Code 在正常模式下,一般只能向console 控制台输出简单的文字信息.但为了把信息输出得更优雅更便于阅读,除了cosole.lo ...

随机推荐

  1. android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解 (转)

    原文地址:android.intent.action.MAIN 与 android.intent.category.LAUNCHER 的验证理解 作者: 第一种情况:有MAIN,无LAUNCHER,程 ...

  2. hdu 2594 Simpsons’ Hidden Talents KMP

    Simpsons’ Hidden Talents Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java ...

  3. 【codevs1993】草地排水 最大流

    [codevs1993]草地排水 题目描述 Description 在农夫约翰的农场上,每逢下雨,Bessie最喜欢的三叶草地就积聚了一潭水.这意味着草地被水淹没了,并且小草要继续生长还要花相当长一段 ...

  4. loj 1168(Tarjan应用)

    题目链接:http://acm.hust.edu.cn/vjudge/problem/viewProblem.action?id=26882 思路:一开始把题意理解错了,还以为是简单路径,然后仔细一看 ...

  5. c# 作业2

    using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.T ...

  6. 文件的存储读写,XML文件的存储与读写

    @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); s ...

  7. python 添加类属性

    类属性必须赋值. 创建类属性 类是模板,而实例则是根据类创建的对象. 绑定在一个实例上的属性不会影响其他实例,但是,类本身也是一个对象,如果在类上绑定一个属性,则所有实例都可以访问类的属性,并且,所有 ...

  8. cf 333b

    G - Chips Time Limit:1000MS     Memory Limit:262144KB     64bit IO Format:%I64d & %I64u Submit S ...

  9. SU sugabor命令学习

    不足之处,欢迎批评指正.

  10. ember.js:使用笔记4 数组数据的分组显示

    除了之前介绍的将数组数据在一个页面中输出的方法,还可以将数组数据分组,按照点击,在不同页面中分别显示,方法为: Model: 例如:Table Router: 设置一个父对象和子对象设置: this. ...