使用Django REST Framework进行身份验证返回405(Authenticating with Django REST Framework returns 405)
我已成功设置
TokenAuthentication
并生成令牌,这些令牌在验证时由用户成功接收。 不幸的是,我无法在没有错误的情况下将令牌发送到API( DRF TokenAuthentication )。 令牌是硬编码的,用于测试和运行djangosrunserver
。 我从响应中看到只允许POST
和OPTIONS
,但我可以curl
而没有任何问题:curl -X GET http://127.0.0.1:8000/api-token-auth -H 'Authorization: Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2'
实施
控制器/ Login.js:
reSignInCommand: function (aToken) { var me = this; Ext.Ajax.request({ url: 'http://127.0.0.1:8000/api-token-auth/', method: 'GET', disableCaching: false, timeout: 10000, useDefaultXhrHeader: false, headers: { 'Authorization' : 'Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2' }, success: function(response) { console.log("success"); }, failure: function(response) { console.log("failure"); } });
API / urls.py:
from django.conf.urls import patterns, url, include urlpatterns += patterns('', url(r'^api-token-auth/', 'rest_framework.authtoken.views.obtain_auth_token'), )
调试:
Request URL:http://127.0.0.1:8000/api-token-auth/ Request Method:GET Status Code:405 METHOD NOT ALLOWED Request headers: Accept:*/* Accept-Encoding:gzip,deflate,sdch Accept-Language:da,zh;q=0.8,de;q=0.6,en;q=0.4 Authorization:Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2 Cache-Control:no-cache Connection:keep-alive Host:127.0.0.1:8000 Origin:http://127.0.0.1 Pragma:no-cache Referer:http://127.0.0.1/sencha/ User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 Response headers: HTTP/1.0 405 METHOD NOT ALLOWED Date: Fri, 20 Dec 2013 10:19:50 GMT Server: WSGIServer/0.1 Python/2.7.5 Vary: Accept, Cookie Access-Control-Allow-Origin: * Content-Type: application/json X-Frame-Options: SAMEORIGIN Allow: POST, OPTIONS
I have successfully setup
TokenAuthentication
and generated tokens which are sucessfully received by the user upon authentication. Unfortunately i am unable to send the token to the API without error (DRF TokenAuthentication). The token is hardcoded for test and im running with djangosrunserver
. I see from the response that onlyPOST
andOPTIONS
is allowed, but i cancurl
without any problems:curl -X GET http://127.0.0.1:8000/api-token-auth -H 'Authorization: Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2'
The implementation
controller/Login.js:
reSignInCommand: function (aToken) { var me = this; Ext.Ajax.request({ url: 'http://127.0.0.1:8000/api-token-auth/', method: 'GET', disableCaching: false, timeout: 10000, useDefaultXhrHeader: false, headers: { 'Authorization' : 'Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2' }, success: function(response) { console.log("success"); }, failure: function(response) { console.log("failure"); } });
api/urls.py:
from django.conf.urls import patterns, url, include urlpatterns += patterns('', url(r'^api-token-auth/', 'rest_framework.authtoken.views.obtain_auth_token'), )
Debug:
Request URL:http://127.0.0.1:8000/api-token-auth/ Request Method:GET Status Code:405 METHOD NOT ALLOWED Request headers: Accept:*/* Accept-Encoding:gzip,deflate,sdch Accept-Language:da,zh;q=0.8,de;q=0.6,en;q=0.4 Authorization:Token a83ff8dabb7fc7b800d381fd3994dfe2051cc0c2 Cache-Control:no-cache Connection:keep-alive Host:127.0.0.1:8000 Origin:http://127.0.0.1 Pragma:no-cache Referer:http://127.0.0.1/sencha/ User-Agent:Mozilla/5.0 (Macintosh; Intel Mac OS X 10_9_0) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/31.0.1650.63 Safari/537.36 Response headers: HTTP/1.0 405 METHOD NOT ALLOWED Date: Fri, 20 Dec 2013 10:19:50 GMT Server: WSGIServer/0.1 Python/2.7.5 Vary: Accept, Cookie Access-Control-Allow-Origin: * Content-Type: application/json X-Frame-Options: SAMEORIGIN Allow: POST, OPTIONS
原文:https://stackoverflow.com/questions/20701447
最满意答案
添加此样式.popover ul li {font-size:28px; color:red;}
试试下面
$(document).ready(function(){ $('[data-toggle="popover"]').popover({ delay: 10 // this is definitely needed ! }); }); // Listen for inserted template to DOM $('[data-toggle="popover"]').on('inserted.bs.popover', function () { // Create the inside link. $inside = $('<ul class="divider"><li>Booking Period is from Immediately</li><li>Travelling Period</li></ul>'); // Add the click event-handler only once $('.popover-content').append($inside[0]) })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/> <a href='#' class='btn' title ='Test' data-trigger='focus' data-toggle='popover' data-html='true' id = 'testOutside'>Click Here </a>
Add this style .popover ul li{font-size:28px;color:red;}
try it below
$(document).ready(function(){ $('[data-toggle="popover"]').popover({ delay: 10 // this is definitely needed ! }); }); // Listen for inserted template to DOM $('[data-toggle="popover"]').on('inserted.bs.popover', function () { // Create the inside link. $inside = $('<ul class="divider"><li>Booking Period is from Immediately</li><li>Travelling Period</li></ul>'); // Add the click event-handler only once $('.popover-content').append($inside[0]) })
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script> <script src="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script> <link href="http://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css" rel="stylesheet"/> <a href='#' class='btn' title ='Test' data-trigger='focus' data-toggle='popover' data-html='true' id = 'testOutside'>Click Here </a>
相关问答
更多-
更改数据内容中的字体大小(Change font size in data-content)[2024-02-05]
添加此样式.popover ul li {font-size:28px; color:red;} 试试下面 $(document).ready(function(){ $('[data-toggle="popover"]').popover({ delay: 10 // this is definitely needed ! }); }); // Listen for inserted template to DOM $('[data-toggle="popover"]'). ... -
如何在Intellij中更改数据视图选项卡/窗口的字体大小?(How to change font size of Data Views tab/window in Intellij?)[2023-10-07]
在Preferences - > Appearance下,有一个覆盖默认字体的选项: 您在此处放置的字体和大小将在调试期间在“变量”窗口中使用(还有许多其他窗口)。 Under Preferences -> Appearance there is an option to override the default fonts: The font and size you put here will be used in the Variables window during debugging (and m ... -
这似乎不直接支持FSharp.Charting但是库确实通过其抽象提供了一个漏洞,因此您可以访问基础图表表示并执行您想要的任何操作。 假设您在Windows上使用System.Windows.Forms.DataVisualization (默认情况下库使用它)运行它,那么您可以这样做: open FSharp.Charting Chart.Line [1; 2; 3] |> Chart.WithDataPointLabels(Label = "hello") |> fun c -> c.ApplyToC ...
-
按容器更改字体大小(Change font size by container)[2023-04-29]
使用spanContainer的滚动高度与其clientHeight。 for (var newSize = 100; spanContainer.scrollHeight > spanContainer.clientHeight; newSize -= 10) { spanContainer.style.fontSize = newSize + '%'; } use the spanContainer's scroll height vs its clientHeight. for (var new ... -
尝试这个 addYLabel(clusterobj , 'YourLabel', 'FontSize', 4) 这将改变将出现在图表右侧的y标签“YourLabel”的大小。 但是,如果您想要更改所有文本标签,那么道路会更长一些。 使用此代码,我找到了搜索TMW支持页面 : % Make all handles visible. This is necessary because clustergram % objects are created with 'HandleVisibility' prope ...
-
去 1>您的图书馆模块 2>打开一个文件“tablayoutplus_custom_view.xml” 3>将android:textSize =“20sp”设置为“android:id =”@ + id / tvTabText“” 要么 在“BadgedTabCustomView.java”中以编程方式在库模块中设置: tvTabText.setTextSize(20); 希望这能帮助你。 Go to 1> Your Library Module 2> open a file "tablayoutp ...
-
如何更改字体大小?(How to change font size?)[2023-10-24]
这一行: font: 78%/130% 'Oxygen',sans-serif; 分解为: font-size: 78%; line-height: 130%; font-family: 'Oxygen', sans-serif; 如果没有明确给出字体大小,则使用浏览器的默认值,实际上是16px 。 This line: font: 78%/130% 'Oxygen',sans-serif; breaks down to: font-size: 78%; line-height: 130%; font- ... -
[myWeb loadHTMLString:[NSString stringWithFormat:@"%@%@",postHTML,close] baseURL:nil]; 你可以在代码中以font-size:size设置字体大小。 试试这个..我知道它工作与否! [myWeb loadHTMLString ...首先使用NSFontAttributeName和NSFontSizeAttribute键创建NSAttributedString时,不要先设置字体,而是将字体名称和大小包含在属性中: attributedTitle = NSAttributedString(string: (device?.name)!, attributes: [ NSForegroundColorAttributeName : NSColor.white, NSParagraphStyleAttributeName : pstyle, ...
JQuery Mobile更改页面上所有元素的字体大小(JQuery Mobile Change the font size for all elements on the page)[2023-09-23]
使用字体选项将标题div添加到标题div。相关文章
更多- Django and full-text search
- 传说中的WeixinJSBridge和微信rest接口
- vicalloy的我与django
- 【z】Storm - the world's best IDE framework for .NET
- django开发微信公众平台遇到的问题记录
- Django资源汇总(转)
- Django下载及安装
- Haystack - Search for Django
- django后台实现微信公众平台网址接入
- 分享:django-haystack+solr实现搜索
最新问答
更多- 您如何使用git diff文件,并将其应用于同一存储库的副本的本地分支?(How do you take a git diff file, and apply it to a local branch that is a copy of the same repository?)
- 将长浮点值剪切为2个小数点并复制到字符数组(Cut Long Float Value to 2 decimal points and copy to Character Array)
- OctoberCMS侧边栏不呈现(OctoberCMS Sidebar not rendering)
- 页面加载后对象是否有资格进行垃圾回收?(Are objects eligible for garbage collection after the page loads?)
- codeigniter中的语言不能按预期工作(language in codeigniter doesn' t work as expected)
- 在计算机拍照在哪里进入
- 使用cin.get()从c ++中的输入流中丢弃不需要的字符(Using cin.get() to discard unwanted characters from the input stream in c++)
- No for循环将在for循环中运行。(No for loop will run inside for loop. Testing for primes)
- 单页应用程序:页面重新加载(Single Page Application: page reload)
- 在循环中选择具有相似模式的列名称(Selecting Column Name With Similar Pattern in a Loop)
- System.StackOverflow错误(System.StackOverflow error)
- KnockoutJS未在嵌套模板上应用beforeRemove和afterAdd(KnockoutJS not applying beforeRemove and afterAdd on nested templates)
- 散列包括方法和/或嵌套属性(Hash include methods and/or nested attributes)
- android - 如何避免使用Samsung RFS文件系统延迟/冻结?(android - how to avoid lag/freezes with Samsung RFS filesystem?)
- TensorFlow:基于索引列表创建新张量(TensorFlow: Create a new tensor based on list of indices)
- 企业安全培训的各项内容
- 错误:RPC失败;(error: RPC failed; curl transfer closed with outstanding read data remaining)
- C#类名中允许哪些字符?(What characters are allowed in C# class name?)
- NumPy:将int64值存储在np.array中并使用dtype float64并将其转换回整数是否安全?(NumPy: Is it safe to store an int64 value in an np.array with dtype float64 and later convert it back to integer?)
- 注销后如何隐藏导航portlet?(How to hide navigation portlet after logout?)
- 将多个行和可变行移动到列(moving multiple and variable rows to columns)
- 提交表单时忽略基础href,而不使用Javascript(ignore base href when submitting form, without using Javascript)
- 对setOnInfoWindowClickListener的意图(Intent on setOnInfoWindowClickListener)
- Angular $资源不会改变方法(Angular $resource doesn't change method)
- 在Angular 5中不是一个函数(is not a function in Angular 5)
- 如何配置Composite C1以将.m和桌面作为同一站点提供服务(How to configure Composite C1 to serve .m and desktop as the same site)
- 不适用:悬停在悬停时:在元素之前[复制](Don't apply :hover when hovering on :before element [duplicate])
- 常见的python rpc和cli接口(Common python rpc and cli interface)
- Mysql DB单个字段匹配多个其他字段(Mysql DB single field matching to multiple other fields)
- 产品页面上的Magento Up出售对齐问题(Magento Up sell alignment issue on the products page)