Django Rest Framework - Authentication credentials were not provided

I'm developing an API using Django Rest Framework. I'm trying to list or create an "Order" object, but when i'm trying to access the console gives me this error:

    {"detail": "Authentication credentials were not provided."}

Views:

    from django.shortcuts import render
    from rest_framework import viewsets
    from django.contrib.auth.models import User
    from rest_framework.renderers import JSONRenderer, YAMLRenderer
    from rest_framework.response import Response
    from rest_framework.views import APIView
    from order.models import *
    from API.serializers import *
    from rest_framework.permissions import IsAuthenticated

    class OrderViewSet(viewsets.ModelViewSet):
        model = Order
        serializer_class = OrderSerializer
        permission_classes = (IsAuthenticated,)

Serializer:

    class OrderSerializer(serializers.HyperlinkedModelSerializer):

        class Meta:
            model = Order
            fields = ('field1', 'field2')

And my URLs:

    # -*- coding: utf-8 -*-
    from django.conf.urls import patterns, include, url
    from django.conf import settings
    from django.contrib import admin
    from django.utils.functional import curry
    from django.views.defaults import *
    from rest_framework import routers
    from API.views import *

    admin.autodiscover()

    handler500 = "web.views.server_error"
    handler404 = "web.views.page_not_found_error"

    router = routers.DefaultRouter()
    router.register(r'orders', OrdersViewSet)

    urlpatterns = patterns('',
        url(r'^api-auth/', include('rest_framework.urls', namespace='rest_framework')),
        url(r'^api-token-auth/', 'rest_framework.authtoken.views.obtain_auth_token'),
        url(r'^api/', include(router.urls)),
    )

And then I'm using this command in the console:

    curl -X GET http://127.0.0.1:8000/api/orders/ -H 'Authorization: Token 12383dcb52d627eabd39e7e88501e96a2sadc55'

And the error say:

    {"detail": "Authentication credentials were not provided."}

Solved by adding "DEFAULT_AUTHENTICATION_CLASSES" to my settings.py

    REST_FRAMEWORK = {
       'DEFAULT_AUTHENTICATION_CLASSES': (
           'rest_framework.authentication.TokenAuthentication',
       ),
       'DEFAULT_PERMISSION_CLASSES': (
            'rest_framework.permissions.IsAdminUser'
       ),
    }

From: stackoverflow.com/q/26906630

Back to homepage or read more recommendations: