小编ank*_*kit的帖子

没有足够的数据错误:在进行Disqus SSO时

我想在我的网站中集成Disqus SSO.

var DISQUS_SECRET = "xyz";
var DISQUS_PUBLIC = "abc";
var disqus_developer = 1;

function disqusSignon() {
    var disqusData = {
        id: "{{ user.id }}",
        username: "{{ user.username }}",
        email: "{{ user.email }}"
    };

    var disqusStr = JSON.stringify(disqusData);
    var timestamp = Math.round(+new Date() / 1000);
    var message = window.btoa(disqusStr);
    var result = CryptoJS.HmacSHA1(message + " " + timestamp, DISQUS_SECRET);
    var hexsig = CryptoJS.enc.Hex.stringify(result);

    return {
        pubKey: DISQUS_PUBLIC,
        auth: message + " " + hexsig + " " + timestamp
    }; …
Run Code Online (Sandbox Code Playgroud)

javascript jquery disqus

37
推荐指数
1
解决办法
796
查看次数

禁止(CSRF令牌丢失或不正确.):

我正在进行下面的ajax调用:

var data_dict = {'user':{{ user.id }}, 'bookId':that.id, 'csrfmiddlewaretoken': '{{ csrf_token }}'};
    $.ajax({
        type: 'POST',
        url:"/issuebook",
        data:data_dict,
        processData: false,
        contentType: false,
        success:function(response)
        {
        }
    });
Run Code Online (Sandbox Code Playgroud)

urls.py是:

urlpatterns = [
url(r'^$',views.checkLogin,name='checklogin'),
url(r'^mylibrary/(?P<pk>\d+)/(?P<user_name>[\w\-]+)$',login_required(views.MyLibrary.as_view()),name='mylibrary'),
url(r'^centrallibrary/(?P<pk>\d+)/(?P<user_name>[\w\-]+)$',login_required(views.CentralLibrary.as_view()),name='centrallibrary'),
url(r'^issuebook$',login_required(views.IssueBookView.as_view()),name='issuebook'), 
Run Code Online (Sandbox Code Playgroud)

]

我在ajax调用中收到"Forbidden(CSRF令牌丢失或不正确.):/ issuebook"错误.

ajax调用中的csrf标记呈现为:

var data_dict = {'user':{{ user.id }}, 'bookId':that.id, 'csrfmiddlewaretoken':'fSSdu8dJ4FO6FvDz8eU5ISzOewRYyGbC'};
                    $.ajax({
                        type: 'POST',
                        url:"/issuebook",
                        data:data_dict,
                        contentType: false,
                        success:function(response)
                        {
                        }
                    });
Run Code Online (Sandbox Code Playgroud)

django django-csrf

7
推荐指数
1
解决办法
6183
查看次数

JavaScript 中 let 和 var 的区别

我正在阅读 Airbnb ( https://github.com/airbnb/javascript )的 javascript 风格指南。

在第 2.2 节中解释了

let 是块作用域的,而不是像 var 那样的函数作用域。

// bad
var count = 1;
if (true) {
  count += 1;
}

// good, use the let.
let count = 1;
if (true) {
  count += 1;
}
Run Code Online (Sandbox Code Playgroud)

我不明白为什么第一个是不好的做法,第二个是不好的,如果 let 和 var 都是块作用域,那么如果我使用它们中的任何一个,它有什么区别?

函数作用域和块作用域之间有什么区别?

javascript

6
推荐指数
1
解决办法
5782
查看次数

使用 Python 通过 Kerberos 身份验证连接到 HDFS

我正在尝试连接到受 Kerberos 身份验证保护的 HDFS。我有以下详细信息,但不知道如何继续。

User
Password
Realm
HttpFs Url
Run Code Online (Sandbox Code Playgroud)

我尝试了以下代码,但出现身份验证错误:

from hdfs.ext.kerberos import KerberosClient
import requests
import logging

logging.basicConfig(level=logging.DEBUG)

session = requests.Session()
session.verify = False

client = KerberosClient(url='http://x.x.x.x:abcd', session=session, 
mutual_auth='REQUIRED',principal='abcdef@LMNOPQ')

print(client.list('/'))
Run Code Online (Sandbox Code Playgroud)

错误

INFO:hdfs.client:Instantiated   
<KerberosClient(url=http://x.x.x.x:abcd)>.
INFO:hdfs.client:Listing '/'.
DEBUG:hdfs.client:Resolved path '/' to '/'.
DEBUG:hdfs.client:Resolved path '/' to '/'.
DEBUG:urllib3.connectionpool:Starting new HTTP connection (1): 
DEBUG:urllib3.connectionpool:http://x.x.x.x:abcd "GET /webhdfs/v1/? 
op=LISTSTATUS HTTP/1.1" 401 997
DEBUG:requests_kerberos.kerberos_:handle_401(): Handling: 401
ERROR:requests_kerberos.kerberos_:generate_request_header(): authGSSClientInit() failed:
Traceback (most recent call last):
File "/Library/Frameworks/Python.framework/Versions/3.6/lib/python3.6/site-packages/requests_kerberos/kerberos_.py", line 213, in generate_request_header
gssflags=gssflags, principal=self.principal)
kerberos.GSSError: ((' No …
Run Code Online (Sandbox Code Playgroud)

kerberos hdfs python-3.x webhdfs

6
推荐指数
1
解决办法
3892
查看次数

Grouping import statements in python

I have started learning python recently and ran pylint on my python file. I got following comments.

from os import listdir
from os.path import isfile, join
Run Code Online (Sandbox Code Playgroud)

I the above two lines, the Pylinter comment is

C:  5, 0: Imports from package os are not grouped (ungrouped-imports)
Run Code Online (Sandbox Code Playgroud)

How can I achieve that ?

And another comment is in below line

import mimetypes, time, csv, platform, base64, django, sys, os, math, uuid, linecache, logging, requests

C:  5, 0: standard import "import mimetypes, …
Run Code Online (Sandbox Code Playgroud)

python pylint

5
推荐指数
1
解决办法
6642
查看次数

PySpark:ModuleNotFoundError:没有名为“ app”的模块

我使用以下语句将数据框保存到PySpark中的CSV文件中:

df_all.repartition(1).write.csv("xyz.csv", header=True, mode='overwrite')
Run Code Online (Sandbox Code Playgroud)

但是我正在错误以下

Caused by: org.apache.spark.api.python.PythonException: Traceback (most recent call last):
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 218, in main
func, profiler, deserializer, serializer = read_udfs(pickleSer, infile, eval_type)
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 138, in read_udfs
arg_offsets, udf = read_single_udf(pickleSer, infile, eval_type)
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 118, in read_single_udf
f, return_type = read_command(pickleSer, infile)
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/worker.py", line 58, in read_command
command = serializer._read_with_length(file)
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/serializers.py", line 170, in _read_with_length
return self.loads(obj)
File "/opt/spark-2.3.0-bin-hadoop2.7/python/lib/pyspark.zip/pyspark/serializers.py", line 559, in loads
return pickle.loads(obj, encoding=encoding)
ModuleNotFoundError: No module named …
Run Code Online (Sandbox Code Playgroud)

apache-spark pyspark

5
推荐指数
1
解决办法
217
查看次数

ValueError:path在mount'C:'上,在mount'F:'时启动,同时在windows中进行django迁移

我正在尝试运行以下命令

python manage.py makemigrations
Run Code Online (Sandbox Code Playgroud)

但是,得到错误

ValueError: path is on mount 'C:', start on mount 'F:'
Run Code Online (Sandbox Code Playgroud)

可能是什么原因?

完整的追溯: -

Traceback (most recent call last):
File "manage.py", line 10, in <module>
execute_from_command_line(sys.argv)
File "C:\Python34\lib\site-packages\django\core\management\__init__.py",  line 367, in execute_from_command_line
utility.execute()
File "C:\Python34\lib\site-packages\django\core\management\__init__.py", line 359, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "C:\Python34\lib\site-packages\django\core\management\base.py", line 294, in run_from_argv
self.execute(*args, **cmd_options)
File "C:\Python34\lib\site-packages\django\core\management\base.py", line 345, in execute
output = self.handle(*args, **options)
File "C:\Python34\lib\site-packages\django\core\management\commands\makemigrations.py", line 189, in handle
self.write_migration_files(changes)
File "C:\Python34\lib\site-packages\django\core\management\commands\makemigrations.py", line 207, in   write_migration_files
migration_string = os.path.relpath(writer.path)
File "C:\Python34\lib\ntpath.py", …
Run Code Online (Sandbox Code Playgroud)

django django-migrations

3
推荐指数
1
解决办法
2561
查看次数

在Django Rest Framework中生成身份验证令牌时出错

我创建了一个端点localhost:8000/getauthtoken来生成身份验证令牌.

我用来获取身份验证令牌的curl命令是:

curl --request POST --url localhost:8000/getauthtoken --header 'content-type: application/json' --data '{"username":"admin", "password":"admin123"}'
Run Code Online (Sandbox Code Playgroud)

但我得到了

{"password":["This field is required."],"username":["This field is required."]}
Run Code Online (Sandbox Code Playgroud)

但在命令中我传递了用户名和密码

根据DRF文档http://www.django-rest-framework.org/api-guide/authentication/, 这是正确的方法.

django curl django-rest-framework django-rest-auth

2
推荐指数
1
解决办法
551
查看次数

检查 python 函数返回的退出代码

我写了一个python函数

def foo():
    if A:
        do something
    if B:
        exit(-1)

if __name__ == "__main__":
    foo()
Run Code Online (Sandbox Code Playgroud)

有什么方法可以检查 foo 函数返回的退出代码吗?我从 Windows shell 运行它。

windows-shell python-2.7

1
推荐指数
1
解决办法
8100
查看次数

更改toString的HashMap的键值分隔符

当我们使用toString()在java中打印HashMap时,它就像

{ "a"="b" }
Run Code Online (Sandbox Code Playgroud)

我该怎么打印呢

{"a":"b"}
Run Code Online (Sandbox Code Playgroud)

java

1
推荐指数
1
解决办法
1312
查看次数

'dict'对象在django中没有属性'filter'

我创建了一个基于类的视图

class MyLibrary(generic.DetailView):

    context_object_name = 'data'

    def get_template_names(self):
        request = self.request
        template_name = 'my_library.html'
        return [template_name]

    def get_queryset(self):
        request = self.request
        user = request.user
        context = {}
        mainData = []
        userIssuedBooks = BooksIssued.objects.filter(user=user)
        print(userIssuedBooks)
        if user.is_authenticated():
            context['issuedBooks'] = userIssuedBooks
        return context
Run Code Online (Sandbox Code Playgroud)

调用视图时出现以下错误

Internal Server Error: /mylibrary/1/admin
Traceback (most recent call last):
  File "C:\Python34\lib\site-packages\django\core\handlers\base.py", line 149, 
in get_response
response = self.process_exception_by_middleware(e, request)
File "C:\Python34\lib\site-packages\django\core\handlers\base.py", line 147,     in get_response
response = wrapped_callback(request, *callback_args, **callback_kwargs)
File "C:\Python34\lib\site-packages\django\contrib\auth\decorators.py", line 2
3, in _wrapped_view
return …
Run Code Online (Sandbox Code Playgroud)

django django-views

0
推荐指数
1
解决办法
1313
查看次数