将 ID 添加到 URL 时,django-cors-headers 不起作用
Posted
技术标签:
【中文标题】将 ID 添加到 URL 时,django-cors-headers 不起作用【英文标题】:django-cors-headers is not working when the ID is added to the URL 【发布时间】:2019-08-12 19:12:00 【问题描述】:除非我将成员 ID 添加到 URL,否则一切正常。有谁知道为什么?提前谢谢你。
工作正常:
componentDidMount()
axios.get('http://localhost:8000/smsf/smsf_member/')
.then(response =>
this.setState(members: response.data.results);
console.log(response);
);
将会员 ID 添加到 URL 后不起作用
componentDidUpdate()
if(this.props.id)
console.log(this.props.id);
axios.get('http://localhost:8000/smsf/smsf_member/' + this.props.id)
.then(response =>
console.log(response);
);
url.py
router = routers.DefaultRouter()
router.register(r'staff_member', StaffMemberViewSet)
router.register(r'smsf_member', SMSFMemberViewSet)
router.register(r'documents', DocumentsViewSet)
urlpatterns = [
path('', include(router.urls)),
path('api-token-auth/', obtain_auth_token, name='api_token_auth'),
]
view.py
class SMSFMemberViewSet(viewsets.ModelViewSet):
queryset = SMSFMember.objects.all()
serializer_class = SMSFMemberSerializer
settings.py
CORS_ORIGIN_ALLOW_ALL = True
错误信息:
【问题讨论】:
【参考方案1】:我认为这可能是因为第二次尝试 URL 没有以 /
结尾
我过去遇到过类似的问题。
查看:https://docs.djangoproject.com/en/2.1/ref/settings/#append-slash
也许这样并重新排序您的中间件可以解决问题。
祝你好运!
【讨论】:
是的,你是对的。太感谢了。我花了很多时间在这上面 欢迎您@RonildoBragaJunior!请解决问题,使其成为选定的答案,以便其他人可以轻松访问该解决方案。以上是关于将 ID 添加到 URL 时,django-cors-headers 不起作用的主要内容,如果未能解决你的问题,请参考以下文章
如何通过 API 将 URL 或 Zoom 会议 ID 添加到 Google 日历
更改商店的 URL 时,ExtJS 5 应用程序 + Django 休息框架 CORS 错误