Python 如何在DRF API密钥中删除散列密钥中的斜杠,或者是否有任何方法可以接受URL.py中的斜杠?

Python 如何在DRF API密钥中删除散列密钥中的斜杠,或者是否有任何方法可以接受URL.py中的斜杠?,python,django,django-models,hash,api-key,Python,Django,Django Models,Hash,Api Key,我在Django中创建了一个API端点,用DRFAPI密钥模块生成一个API密钥。这个问题有时会发生。如果生成的密钥中有斜杠,则其他API端点无法获取该密钥。如果我在Django管理端创建它,就没有问题了 我已尝试重写模块中的方法,以便可以通过序列化程序生成该模块。我找不到问题所在 #models.py 类UserCompanyAPIKeyManager(BaseAPIKeyManager): 密钥生成器=密钥生成器(前缀长度=32,密钥长度=32) 类UserCompanyAPIKey(Abs

我在Django中创建了一个API端点,用DRFAPI密钥模块生成一个API密钥。这个问题有时会发生。如果生成的密钥中有斜杠,则其他API端点无法获取该密钥。如果我在Django管理端创建它,就没有问题了

我已尝试重写模块中的方法,以便可以通过序列化程序生成该模块。我找不到问题所在

#models.py
类UserCompanyAPIKeyManager(BaseAPIKeyManager):
密钥生成器=密钥生成器(前缀长度=32,密钥长度=32)
类UserCompanyAPIKey(AbstractAPIKey):
objects=usercompanyapKeyManager()
#一些领域
@类方法
def生成前缀(self)->str:
key\u generator=usercompanyapkey.objects.key\u generator
尝试:
key,prefix,hash_key=key_generator.generate()
除ValueError外:#与<1.4的兼容性
key,hashed_key=self.key_generator.generate()#类型:ignore
pk=散列密钥
前缀,哈希_键=拆分(哈希_键)
其他:
pk=连接(前缀,哈希_键)
返回主键、前缀、哈希键

#序列化程序.py
类UserCompanyAPISerializer(serializers.ModelSerializer):
def创建(自我验证的_数据):
pk,prefix,hash_key=self.Meta.model.generate_prefix()
已验证的_数据['prefix']=前缀
已验证的_数据['id']=pk
已验证的\u数据['hashed\u key']=hashed\u key
return super().create(已验证的_数据)
类元:
model=usercompanyapkey
字段=['id'、'name'、'expiration\u date'、'user'、'company']
工作输出 问题(斜杠)
可能不会,如果你想通过URL传递密钥,为什么不制作密钥呢?这就是我想要搜索的术语。谢谢兄弟!可能不会,如果你想通过URL传递密钥,为什么不制作密钥呢?这就是我想要搜索的术语。谢谢兄弟!
us5z0Faxg2zEPDo99NmAOgEsf70MpHVb.pbkdf2_sha256$150000$RmkU1OFLKEtW$2YIEK7cZztwVjbqAEoQRLDzxujfTlQ2Fwx4skp2o1nk=
eKi7lj4AvTEgorF7iKiFrzxQZlVD196C.pbkdf2_sha256$150000$ri39ifY6bmDj$DKQHFhTYQOzpEph6v8BUwbdxO/FcLjqDZa/nzq+ujJY=