一、背景

  在前后端分离过程时,后端服务器只开放本地接口,而前端则开放IP接口,在DRF响应请求时,会把域名(locahost+port)响应给前端服务器,前端服务器把再把数据响应给浏览器,浏览器在解析相应资源时就会报错。

二、解决方案

  要点:

    1. 关闭DRF自动合成资源完整链接(域名+资源路径)

    2.在VUE端合成对外开放的完整链接(IP+资源链接)

  方法:

    DRF部分(serializers)

    

class GoodsFrontImageSerializer(serializers.ModelSerializer):
url = serializers.SerializerMethodField(read_only=True)
class Meta:
model = Goods
fields = ('url',)
def get_url(self, obj):
try:
return 'api/' + obj # obj:DRF可访问链接
except:
return None
class GoodsSerializer(serializers.ModelSerializer):
goods_front_image = GoodsFrontImageSerializer()
class Meta:
model = Goods
fields = "__all__"

    VUE部分(xx.vue)

      

<template>
<div class="hello">
<h1></h1>cc
<ul>
<li v-for="inf in info['results']">
<img :src="inf.goods_front_image.url">
</li>
</ul>
</div>
</template>
<script>
export default {
el: '#app',
data () {
return {
info: null
}
},
mounted () {
this.$axios
.get('/goods/')
.then(response => (this.info = response.data))
}
}
</script>

三、效果

  在另外一台服务器上访问。

  

最新文章

  1. deepin linux 安装 mysql
  2. 使用nginx为ArcGIS Server做反向代理
  3. 最小生成树 kruskal hdu 5723 Abandoned country
  4. Java 操作 Redis 高级
  5. emacs tutorial笔记
  6. 初学Java语法(笔记)
  7. img 图片高度设置为百分比无效的解答
  8. 记录bigdesk中ElasticSearch的性能参数
  9. self.a 和 _a 的区别
  10. c#基类 常用数据验证的封装,数字,字符,邮箱的验证
  11. Buffer
  12. MySQL流程控制函数
  13. javascript Node操作
  14. ActivityManager与Proxy模式的运用
  15. html2canvas 识别 svg 解决方案
  16. 几个bat文件(关于robot freamwork安装)
  17. Linux ansible 之 playbook
  18. 服务发现 - consul 的介绍、部署和使用
  19. WebBrowser控件的NavigateToString()方法 参数 为中文时乱码问题的解决。
  20. JavaScript之12306自动刷新车票[待完善]

热门文章

  1. Tomcat清理无用应用防止漏洞
  2. ISO/IEC 9899:2011 条款6.9.1——函数定义
  3. MySql存储过程常用的函数
  4. Spring MVC 实例:Excel视图的使用
  5. OpenGL程序无法启动此应用程序,因为计算机中丢失glut32.dll(转))
  6. 利用SynchronizationContext.Current在线程间同步上下文(转)
  7. centos配置/etc/mail.rc发邮件
  8. JavaScript获取手机屏幕翻转方法
  9. ELK之Kibana的可视化监控报警插件sentinl的配置
  10. NPOI OFFICE 2007 文件格式不被支持,读取异常