zoukankan      html  css  js  c++  java
  • 淘淘商城学习笔记 之 上传图片到远程服务器,图片的回显出现的bug

    由于非科班自学转行,看了好多视频,最近在学习黑马的淘淘商城,感觉受益良多,遇到一个比较奇怪的bug调了好久,遂心乐之分享于诸君

    bug情况是这样的:在商城的后台上传图片之后图片回显不出来,右键查看链接,发现链接被加了localhost://8080 

    原来正常的链接是这样的:

    ftp://ftpuser@192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

    或缩写去掉写为(我复制的链接用的这个):

    192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

    错误的链接为:

    http://localhost:8080/192.168.25.133/home/ftpuser/www/images/2017/08/11/1502405214622039.png 

    聪明的你可能此时就已经想通了问题出在哪里了吧!先别笑,这个问题我百度了好久都没找到答案!

    错误演示

     

    此时使用filezilla查看发现图片已经上传到ftp服务器里了,很奇怪为什么图片没有回显呢?右键那张奇怪的图片,复制链接用空白页打开显示404,

    注意到链接中多加了localhost:8080/ ,去掉这个多余的也能访问,这是为啥呢?

    其实原因很简单:

    这个生成的链接是图片上传到服务器后返回的图片url(这不是废话),因为之前要登录ftp服务器,所以在配置文件中没有写http://作为url,而且一般使用hostIp的地方都是不能写http://的,写了会报错的,所以 就没有写,但是我需要返回一个json数据,url也就直接写在里边了,也没多注意,数据格式如下:

    {"error":0,"url":"192.168.25.133/images/2017/08/11/1502431975821476.png"}

    由于现在的浏览器功能越来越强大了,不写http://也能访问,所以让我纠结了一天,返回json之前定义一个字符串加上http://,问题就解决了。

    正确的json返回url:

    {"error":0,"url":"http://192.168.25.133/images/2017/08/11/1502431975821476.png"}

    ==================分割线================

    好多同学知道是这个问题了,但是找起来还是找不到,提示一下,在拼接图片url的controller中,只需要找到那个图片的url,然后前边加上“http://”+

    豆芽菜长房高,他也是个菜。                          ------------马士兵马老师

  • 相关阅读:
    Retrofit2.0+OkHttp设置统一的请求头(request headers)
    Retrofit、Okhttp使用小记(cookie,accesstoken,POST
    quartz持久化部署实现
    支付宝支付-常用支付API详解(查询、退款、提现等)
    支付宝支付-提现到个人支付宝
    Git 版本还原命令
    CEF JS实现获取剪贴板图片的DataURL
    CEF 自定义用户协议(scheme)实现以二进制流的方式显示图片、视频、音频
    CEF C++调用前端js方法展示传递过来的图片数据
    C++读写图片数据转成Base64格式
  • 原文地址:https://www.cnblogs.com/hellxz/p/bugs_01.html
Copyright © 2011-2022 走看看