将ID添加到URL时,django-cors-headers不起作用

时间:2019-03-21 20:28:06

标签: django reactjs axios django-cors-headers

一切正常,除非我将成员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 enter image description here

CORS_ORIGIN_ALLOW_ALL = True

错误消息: enter image description here

1 个答案:

答案 0 :(得分:1)

我认为可能是由于第二次尝试URL并未以/结尾的原因

我过去也遇到过类似的问题。

签出:https://docs.djangoproject.com/en/2.1/ref/settings/#append-slash

也许这样,然后重新排序中间件就可以解决问题。

祝你好运!