Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何从我的javascript转到当前应用程序的另一个应用程序的views.py_Javascript_Python_Django_Xmlhttprequest - Fatal编程技术网

如何从我的javascript转到当前应用程序的另一个应用程序的views.py

如何从我的javascript转到当前应用程序的另一个应用程序的views.py,javascript,python,django,xmlhttprequest,Javascript,Python,Django,Xmlhttprequest,我的javascript: xhttp.open('POST', 'avgsize/avgpython' ,true); xhttp.setRequestHeader("content-type","application/json"); xhttp.send(JSON.stringify(dates)); xhttp.onreadystatechange=function(){ if(this.readyStat

我的javascript:

xhttp.open('POST', 'avgsize/avgpython' ,true);
    xhttp.setRequestHeader("content-type","application/json");
    xhttp.send(JSON.stringify(dates));

    xhttp.onreadystatechange=function(){
        if(this.readyState==4 && this.status==200){
            alert(this.responseText);               
            
        }
    }
My present Home应用程序(我访问的所有URL都在此应用程序中工作)URL.py:

urlpatterns = [
path('' , views.HomeBase , name="HomeBase"),
path('Home' , views.Home , name="Home"),
path('astroids' , include('Astroids.urls')),
path('nearest' , include('Nearest.urls')),
path('fastest' , include('Fastest.urls')),
path('avgsize/' , include('Avgsize.urls')),
]

我的Avgsize应用程序URL(我想从家庭应用程序来到这里):


我应该在代码中做哪些更改,以便从javascript转到Avgsize应用程序,链接avgpython并访问views.avgpython。请帮忙

继续逐行提问

1.)在Javascript异步请求中,您需要随请求一起发送CSRF令牌,如果您没有随请求一起发送CSRF令牌,Django服务器将抛出一个错误,指出请求来自不同的域,为避免所有这些复杂性,我建议使用
CSRF\u豁免
decorator

2.)在您的主页URL中,不需要做太多更改,但为了保持简单,我建议使用以下方法,减少转发请求的一个步骤(考虑小项目,如果您的项目很大,则不应遵循此方法)

3.)在您的观点中,正如我在第一点中所说,您需要在该观点中添加csrf豁免,这就是您需要这样做的方式

from django.views.decorators.csrf import csrf_exempt
from django.http import HttpResponse

@csrf_exempt
def avgpython(request):
    return HttpResponse("You came to AvgPython Function")
据我所知,我已向您提供了您想要的信息,如果您在当前解决方案中遇到任何问题,您可以在解决方案中进行评论,或者您甚至可以通过以下地址向我发送邮件:kiranu941@gmail.com

from Avgsize import views
urlpatterns = [
path('avgsize/avgpython' , include('views.avgpython'))
]
from django.views.decorators.csrf import csrf_exempt
from django.http import HttpResponse

@csrf_exempt
def avgpython(request):
    return HttpResponse("You came to AvgPython Function")