2017-06-12 30 views
0

我正在開發一個基於django的應用程序,我正在使用Json調用從一個應用程序到另一個應用程序,json調用來自HTML該文件位於AWS s3存儲桶中,json調用來自django應用程序。在Django應用程序中請求的資源上沒有'Access-Control-Allow-Origin'標頭

當我運行/打開HTML文件收到此錯誤

的XMLHttpRequest無法加載https://domain_name/email_view/6/。請求的資源上沒有「Access-Control-Allow-Origin」標題。因此不允許訪問原產地'https://s3-ap-southeast-1.amazonaws.com'。響應有HTTP狀態代碼500。

我的代碼來解決這個問題

$(document).ready(function() { 

    $.get("url", function (data) { 
     email_otp = JSON.stringify(data); 
     "some code" 
    }); 


}); 

views.py

def email_view(request, id): 
course = get_object_or_404(CourseWare, pk=id) 
user = UserProfile.objects.get(user__id=request.user.id) 
myorder = MyOrder.objects.get_or_create(buyer=user, course=course) 
if request.is_ajax(): 
     sms_otp = randint(10000, 100000) 
     return HttpResponse(json.dumps(sms_otp),content_type="application/json") 

nginx的代碼

location /media {               
       root /opt/pursuite/www;           
       add_header Access-Control-Allow-Origin "*";     
       add_header Access-Control-Allow-Methods "GET, OPTIONS";  
       add_header Access-Control-Allow-Methods "PUT, OPTIONS";   
       add_header Access-Control-Allow-Methods "GET,POST,OPTIONS,HEA 
D";                    
add_header Access-Control-Allow-Headers "Authorization, Origin, 
X-Requested-With, Content-Type, Accept";}                    
+1

你寫的「url」嗎? – Ced

+0

沒有得到你?請詳細解釋 –

回答

0

您需要在https://domain_name/email_view/6/

使CORS你做的有:

location /media { ... } 

這似乎並沒有在正確的位置

我personnally不知道Django的,但你可以按照this link

+0

如何在我們的url中啓用django視圖。我是django的新手。 –

+0

@samrehanJha我不知道django但看到我的編輯 – Ced

相關問題