ai_admin/WebSite/settings.py
2024-09-20 04:29:09 +00:00

270 lines
16 KiB
Python
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

"""
Django settings for WebSite project.
Generated by 'django-admin startproject' using Django 5.0.7.
For more information on this file, see
https://docs.djangoproject.com/en/5.0/topics/settings/
For the full list of settings and their values, see
https://docs.djangoproject.com/en/5.0/ref/settings/
"""
import os
from pathlib import Path
# Build paths inside the project like this: BASE_DIR / 'subdir'.
BASE_DIR = Path(__file__).resolve().parent.parent
# Quick-start development settings - unsuitable for production
# See https://docs.djangoproject.com/en/5.0/howto/deployment/checklist/
# SECURITY WARNING: keep the secret key used in production secret!
SECRET_KEY = "django-insecure-!4a*kl(!=s*76xngra89q*86d&e8ya=l49!bibepo6p1(50+$s"
# SECURITY WARNING: don't run with debug turned on in production!
DEBUG = True
ALLOWED_HOSTS = ['*']
# settings.py
AUTH_USER_MODEL = 'WebAdmin.User'
# Application definition
INSTALLED_APPS = [
'django.contrib.admin',
"django.contrib.auth",
"django.contrib.contenttypes",
"django.contrib.sessions",
"django.contrib.messages",
"django.contrib.staticfiles",
'WebAdmin.apps.WebadminConfig',
'django.contrib.sites', # Django sites framework
'allauth', # Django allauth
'allauth.account', # Django allauth accounts
'allauth.socialaccount', # Django allauth social accounts
'allauth.socialaccount.providers.google', # Google provider
]
SITE_ID = 1
# 配置会话
SESSION_ENGINE = 'django.contrib.sessions.backends.db' # 使用数据库存储会话
SESSION_COOKIE_AGE = 259200 # 3 hours, in seconds
# 其他安全设置
SESSION_COOKIE_SECURE = True
SESSION_COOKIE_HTTPONLY = True
CSRF_COOKIE_SECURE = True
CSRF_COOKIE_HTTPONLY = True
SESSION_SAVE_EVERY_REQUEST = True
AUTHENTICATION_BACKENDS = (
'django.contrib.auth.backends.ModelBackend',
'allauth.account.auth_backends.AuthenticationBackend',
)
LOGIN_REDIRECT_URL = '/user/userinfo/' # 登录后重定向的URL
LOGIN_URL = '/'
LOGOUT_REDIRECT_URL = '/'
# 配置 Google OAuth2
SOCIALACCOUNT_PROVIDERS = {
'google': {
'SCOPE': [
'profile',
'email',
],
'AUTH_PARAMS': {
'access_type': 'online',
},
'APP': {
'client_id': '695125996308-hvfk1eui9vstkhs2ucfgf9pch5j661ng.apps.googleusercontent.com',
'secret': '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',
}
}
}
CSRF_TRUSTED_ORIGINS = [
'https://www.typeframes.cc',
'https://typeframes.cc',
'https://typeframes.ai',
'https://www.typeframes.ai',
'https://typeframes.com.cn',
'https://www.typeframes.com.cn',
'http://localhost',
'http://127.0.0.1',
]
## 邮箱配置
# settings.py
SECRET_ID = "AKIDjNrBSnBXnAQXg6ythOADLJ2nOuLpFaoo"
MAIL_SECRET_KEY = "ENPZnwADD623HUm15EITdvDhAa8nQxLk"
EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend'
EMAIL_HOST = 'smtp.exmail.qq.com'
EMAIL_PORT = 587 # 使用 TLS 的端口
EMAIL_USE_TLS = True
EMAIL_HOST_USER = 'admin@typeframes.cc'
EMAIL_HOST_PASSWORD = 'TOb7MuGmVgit9c'
DEFAULT_FROM_EMAIL = 'admin@typeframes.cc'
TENCENT_CLOUD_API_VERSION = "2020-10-02"
#阿里云短信配置
ALIBABA_CLOUD_ACCESS_KEY_ID='LTAI5tHKcV1RbC8t68UfsATy'
ALIBABA_CLOUD_ACCESS_KEY_SECRET='wLWjMBnAlchFMa9gC8B7ZVBKaew4t5'
MIDDLEWARE = [
'allauth.account.middleware.AccountMiddleware',
"django.middleware.security.SecurityMiddleware",
"django.contrib.sessions.middleware.SessionMiddleware",
'WebAdmin.middleware.CheckSessionMiddleware', # 添加自定义中间件
'django.middleware.locale.LocaleMiddleware', # 添加这行
"django.middleware.common.CommonMiddleware",
# "django.middleware.csrf.CsrfViewMiddleware",
"django.contrib.auth.middleware.AuthenticationMiddleware",
"django.contrib.messages.middleware.MessageMiddleware",
"django.middleware.clickjacking.XFrameOptionsMiddleware",
]
ROOT_URLCONF = "WebSite.urls"
TEMPLATES = [
{
"BACKEND": "django.template.backends.django.DjangoTemplates",
"DIRS": [os.path.join(BASE_DIR, 'templates')],
"APP_DIRS": True,
"OPTIONS": {
"context_processors": [
"django.template.context_processors.debug",
"django.template.context_processors.request",
"django.contrib.auth.context_processors.auth",
"django.contrib.messages.context_processors.messages",
],
},
},
]
WSGI_APPLICATION = "WebSite.wsgi.application"
# Database
# https://docs.djangoproject.com/en/5.0/ref/settings/#databases
DATABASES = {
'default':
{
'ENGINE': 'django.db.backends.mysql', # 数据库引擎
'NAME': 'admin_data', # 数据库名称
'HOST': '1Panel-mysql-61G1', # 数据库地址,本机 ip 地址 127.0.0.1
'PORT': 3306, # mysql端口
'USER': 'admin_data', # 数据库用户名
'PASSWORD': 'mPmFz2NeXSYbzrt5', # 数据库密码
'OPTIONS': {
'charset': 'utf8mb4',
'use_unicode': True,
},
},
'external_db': {
'ENGINE': 'django.db.backends.mysql', # 外部数据库
'NAME': 'uinapp',
'USER': 'uinapp',
'PASSWORD': '6CnCBxZ77cLredtK',
'HOST': '81.70.187.27',
'PORT': '3306',
}
}
# Password validation
# https://docs.djangoproject.com/en/5.0/ref/settings/#auth-password-validators
AUTH_PASSWORD_VALIDATORS = [
{
"NAME": "django.contrib.auth.password_validation.UserAttributeSimilarityValidator",
},
{
"NAME": "django.contrib.auth.password_validation.MinimumLengthValidator",
},
{
"NAME": "django.contrib.auth.password_validation.CommonPasswordValidator",
},
{
"NAME": "django.contrib.auth.password_validation.NumericPasswordValidator",
},
]
# Internationalization
# https://docs.djangoproject.com/en/5.0/topics/i18n/
LANGUAGE_CODE = 'zh-hans'
TIME_ZONE = 'Asia/Shanghai'
USE_I18N = True
USE_L10N = True
USE_TZ = False
# 项目根目录路径
BASE_DIR = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
# 静态文件 (CSS, JavaScript, Images)
STATIC_URL = '/static/'
# 媒体文件
MEDIA_URL = '/media/'
MEDIA_ROOT = os.path.join(BASE_DIR, 'media')
# Default primary key field type
# https://docs.djangoproject.com/en/5.0/ref/settings/#default-auto-field
DOMAIN = 'https://www.typeframes.ai' # 或者 'https://example.com'
DEFAULT_AUTO_FIELD = "django.db.models.BigAutoField"
# 微软云存储
AZURE_CONNECTION_STRING = 'DefaultEndpointsProtocol=https;AccountName=a1726850085;AccountKey=GADf/0Vv7HZpXGAR1KbpOfE1Uuo7p6WVyUwqBgsHRurmlzF8HKDWO1FkIGlwLc+fiseyHzW5OA5B+AStFHjWxQ==;EndpointSuffix=core.windows.net'
AZURE_CONTAINER_NAME = 'audio'
#支付宝电脑版支付配置
# 支付宝配置
ALIPAY_DEBUG = True # True 表示沙箱环境False 表示生产环境
# 沙箱环境配 电脑支付宝
ALIPAY_APP_ID_SANDBOX_PC = '9021000139657593' # 沙箱环境电脑端应用ID
ALIPAY_APP_PRIVATE_KEY_SANDBOX_PC = 'MIIEpAIBAAKCAQEAzTFT91PExk5VcNmv6fK3/s/kTanHjOdk1JOZZ4VruHmcO4Pe5Ml2yGM3Rm0QsiHONkcEEXI3VaIZC613Kfi78fRAQuWfhMmh/wskAguBC0Jm0lX5Ui4liE+gpjTxVa2U6vtv3Eehy9jU5zT6Apet9Z1uL1DByGQ81NWgZy+hbbLp3M5+3MgzV85PhcSRliP0wH3VJEWFKW9XDII9NmEJhRV4P+jX9H/gRxXsMBMIGqhFEjvnhFnF6wtMDeANnYOFbOMX6RgE4xGXmKabmsGbGx4XkHM4eBAU0SGyOjAjvRzGrW56KfBz8P5zgWgwarLWuKzvqtFkRkw1c09pDxa3qQIDAQABAoIBAQCJJ3W2ljmrS+T0f62ENQcjvZYfC2MlHe5Z4Sbi+V2dezwg0+6DAt7w5tCltHU6fDo4MZPYjX3LMYSIN7S1S1tlSRxDGvVbbuNndOzmqQXinsnXwjva4JmZ2Y/KSQ0fdd1ajCKjHQZbGV6GBPUwEm7nBAoIenRtHANFSF3lWwMOLRxe9rUp4U+XwqImN3DSBOAbHNqgk6QO0yKZmIPSxYj5ptrLaneIZ1C+lxwvot6MDVFcc8nJ9lezNIUGdLkh2qdLJ/Zi9sHFfihydvryXU/Ckzi3aLUxyBFtVxcu7g1qkVy3q3l5Oye5svMZaQwgdlnO4UQE/FXS7ltSOJocrogBAoGBAO5ZHo18FIVOOmuQgdb8b7rFaIZXhV6JKOotP+R5GiPcNzAQUjxBEivqRDvJJ73sxmk9YJv0nzn0CTwN54z0zNZ4WOnCu+Bh9oP5gVBBcc+kdsMIF9HBRfnLWV6kkHRbM3WhOQ7o0hhmUgHbxP7YuTpmqgzGSw74JFWCe6+S+/mBAoGBANxjnACpfcdA7iUZ9oqH/6XTOM4zgk53pxZplzFGBHPw79WnlKCdzQw1mGnxah0y5awibyVI+CrUVCsrJbO7VWv2GT4oJzcrHkqKGWBJJVT45ddaAZaAwrkyxySZWFEXs0yfpn4gTpaDikCORcNnKNQBiKkkLMmaqeaxZbRVqMIpAoGAUy+Fa0nn+5KO7yWzOy5FbIEjdueq45CpV/nM99eQWP2twTehC+iGCA+uGtOc7DtsECTcx/F7dQWIB46uxtJVf3DnT0aovapTGEKHcFQ2/Ypf7LexYIK9Am6HVXHH/OQrtJ09RcfaM6vaaU2jlnJbS1ezd9vpLGNMgw+UTXXWPYECgYEAnwjSPjgQp4RXVTaTDgxtkoAFcecBlRYK4MV5cPkRpYiryQWQ3waAPNtADNNEu6VKzxhaFBG/40gtJKmSH0yDq9B/Drdy9QCMb0WQYkbmRZcGZIxysORhn7rgsaxmar4riJN8VW+CxmJNlaAU/5ilgbdJoqSUHTcae3pv5d4aVWECgYBNl0g/weXPMPKAiSzLDddOSgpv+54js8C+T2gH0mX9XGCUpX6mrGgnlIqLTNT2DjzgHCC5nnGf63Ffo8dSzKf9mvaGilq4qTgzBIXqeqIGmslhV0ai97KHNvEdgIPTbNBIAaRyUSJEY0lF26JqFUGiEad9Kyw8LIOEPW62ET2SZA==' # 沙箱环境电脑端应用私钥
ALIPAY_PUBLIC_KEY_SANDBOX_PC = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwBw5gCeI7XcMRuiKVcu95f4rpjgyKnztWqzpxVn43xz6ZmU01j2cLT9pNcsDvCz8+9bKALVYslg9WJsVAOVk422k7wd0KKHbmptkvuTiSzNc6kVNDYsQRwma8W/vJgH5bVBL6TpOqWZSJlEHSLT6YTPK1kOE3E8e2cdO2YQOVPw13+8H5xBRdpPTRsA7J4i+4TN5xjtNOuGQUcyo3jBf/O6esDGqQcDNQLqPT5V9tcR2aEPLmWITD3I64URYBnvhuDzezVdTdB7q+9qyMEs+SZ8q3Cy6uSudFuqXODL+esKP7xiBqxkGQhF6rKO6l4j3xnxgJVzsqoORpG6bptVxJQIDAQAB' # 沙箱环境电脑端支付宝公钥
ALIPAY_APP_ID_SANDBOX_MOBILE = '9021000139657593' # 沙箱环境移动端应用ID
ALIPAY_APP_PRIVATE_KEY_SANDBOX_MOBILE = 'MIIEpAIBAAKCAQEAzTFT91PExk5VcNmv6fK3/s/kTanHjOdk1JOZZ4VruHmcO4Pe5Ml2yGM3Rm0QsiHONkcEEXI3VaIZC613Kfi78fRAQuWfhMmh/wskAguBC0Jm0lX5Ui4liE+gpjTxVa2U6vtv3Eehy9jU5zT6Apet9Z1uL1DByGQ81NWgZy+hbbLp3M5+3MgzV85PhcSRliP0wH3VJEWFKW9XDII9NmEJhRV4P+jX9H/gRxXsMBMIGqhFEjvnhFnF6wtMDeANnYOFbOMX6RgE4xGXmKabmsGbGx4XkHM4eBAU0SGyOjAjvRzGrW56KfBz8P5zgWgwarLWuKzvqtFkRkw1c09pDxa3qQIDAQABAoIBAQCJJ3W2ljmrS+T0f62ENQcjvZYfC2MlHe5Z4Sbi+V2dezwg0+6DAt7w5tCltHU6fDo4MZPYjX3LMYSIN7S1S1tlSRxDGvVbbuNndOzmqQXinsnXwjva4JmZ2Y/KSQ0fdd1ajCKjHQZbGV6GBPUwEm7nBAoIenRtHANFSF3lWwMOLRxe9rUp4U+XwqImN3DSBOAbHNqgk6QO0yKZmIPSxYj5ptrLaneIZ1C+lxwvot6MDVFcc8nJ9lezNIUGdLkh2qdLJ/Zi9sHFfihydvryXU/Ckzi3aLUxyBFtVxcu7g1qkVy3q3l5Oye5svMZaQwgdlnO4UQE/FXS7ltSOJocrogBAoGBAO5ZHo18FIVOOmuQgdb8b7rFaIZXhV6JKOotP+R5GiPcNzAQUjxBEivqRDvJJ73sxmk9YJv0nzn0CTwN54z0zNZ4WOnCu+Bh9oP5gVBBcc+kdsMIF9HBRfnLWV6kkHRbM3WhOQ7o0hhmUgHbxP7YuTpmqgzGSw74JFWCe6+S+/mBAoGBANxjnACpfcdA7iUZ9oqH/6XTOM4zgk53pxZplzFGBHPw79WnlKCdzQw1mGnxah0y5awibyVI+CrUVCsrJbO7VWv2GT4oJzcrHkqKGWBJJVT45ddaAZaAwrkyxySZWFEXs0yfpn4gTpaDikCORcNnKNQBiKkkLMmaqeaxZbRVqMIpAoGAUy+Fa0nn+5KO7yWzOy5FbIEjdueq45CpV/nM99eQWP2twTehC+iGCA+uGtOc7DtsECTcx/F7dQWIB46uxtJVf3DnT0aovapTGEKHcFQ2/Ypf7LexYIK9Am6HVXHH/OQrtJ09RcfaM6vaaU2jlnJbS1ezd9vpLGNMgw+UTXXWPYECgYEAnwjSPjgQp4RXVTaTDgxtkoAFcecBlRYK4MV5cPkRpYiryQWQ3waAPNtADNNEu6VKzxhaFBG/40gtJKmSH0yDq9B/Drdy9QCMb0WQYkbmRZcGZIxysORhn7rgsaxmar4riJN8VW+CxmJNlaAU/5ilgbdJoqSUHTcae3pv5d4aVWECgYBNl0g/weXPMPKAiSzLDddOSgpv+54js8C+T2gH0mX9XGCUpX6mrGgnlIqLTNT2DjzgHCC5nnGf63Ffo8dSzKf9mvaGilq4qTgzBIXqeqIGmslhV0ai97KHNvEdgIPTbNBIAaRyUSJEY0lF26JqFUGiEad9Kyw8LIOEPW62ET2SZA==' # 沙箱环境移动端应用私钥
ALIPAY_PUBLIC_KEY_SANDBOX_MOBILE = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAwBw5gCeI7XcMRuiKVcu95f4rpjgyKnztWqzpxVn43xz6ZmU01j2cLT9pNcsDvCz8+9bKALVYslg9WJsVAOVk422k7wd0KKHbmptkvuTiSzNc6kVNDYsQRwma8W/vJgH5bVBL6TpOqWZSJlEHSLT6YTPK1kOE3E8e2cdO2YQOVPw13+8H5xBRdpPTRsA7J4i+4TN5xjtNOuGQUcyo3jBf/O6esDGqQcDNQLqPT5V9tcR2aEPLmWITD3I64URYBnvhuDzezVdTdB7q+9qyMEs+SZ8q3Cy6uSudFuqXODL+esKP7xiBqxkGQhF6rKO6l4j3xnxgJVzsqoORpG6bptVxJQIDAQAB' # 沙箱环境移动端支付宝公钥
# 生产 电脑支付宝
ALIPAY_APP_ID_PRODUCTION_PC = '2021004169658094' # 生产环境电脑端应用ID
ALIPAY_APP_PRIVATE_KEY_PRODUCTION_PC = 'MIIEowIBAAKCAQEAlkLen9IPB0OhhRnDw0Ks1yX74oXSLJ4hEaqQmJqXI8qfNFL+DiuEWs+yAZRad8mDOUqERka1YrMI9Y7iVyGWhcFRHe91+oNNDZlrXp1K/SzPWtA1tPbkBrgxV5lgj/fGKJrMlJhlfF7Bio8b9jOfyMtaqolP777tD0zMAdIbKYCW1wmUgUeRsNplDO/8GIDoJV+qGxTEd2TN3eJfC9MBIkCW/b1QHTXukJIFzKGufNRNJIWbPi/wmyMaUd+lyemz//sNhD2+CpiuB4pi/v3c8tQsPJeOslRpo9+T0lg9wLlDgMMeajf+PMzjErRmiOxI1ZwNn8xkaE6ZfeDhh18v1wIDAQABAoIBAQCQ225bjNpIGn8AHdKHzyNpVoj53CC+OsOOkGxNcdr6+j945fleF73E/i2RMD/28yG6fYf/Z/M9b3PXpyO09AB0eeWFgnCuTR5fWeQUlnbQk/5igg8Eom85uyB2XrqkkC1Mv88yAaj0uTTEKyq9sw77OG/zr+SML/fBpDuYFcFxw7JnD+TxKBeqT6gd1RHcfeyta1MWiEsQeX7y2PGicn5HjbGLCsJxvJVGyvaQFPBN5eoIesSm74DEFL25ZdR1vpaWYGm7XZgAY6dgzPbijFx2nLMRAM9e+M6I0u75k0mDSVb9y+1TXqEKPSG7FegIbzhylj20ZcwWYb0SgJ8sHuvBAoGBAOcRBlbtkq4uGqFyTY1y1WedxSMJf0bMfYum3CvT7YAOVffVxye2I3s4v1Os1NPR5M+om7eEtgN+9Zl2DIagPlTB6CrYRg26hwnDuNhLqLZHo8IW0IK2xY8QSPzvRJcx1sSvTqLXG/MdsFDV9SGNxYazYpIqlL2Q2cUHImc6+JqZAoGBAKZ5rnVPlOQ20aXCe/0nn7K6PIFCQhBHayBjXmqaNi7ZGVgM1CXrvFffpGrc7e60gVfbOkZjzUy0XJAmagYTNZ8+HDh52y6YRoMR3XjPKgrs4+hdraG1vBVSmxRpzUfYqqq+k9T2dnK3pjkYIrDZiiwsT57o2EispQBWRfNmKZPvAoGAeclBXCPPgbqPErTaJ0l1LS28r+DbkodJTIff18HVlf74VK36T/Xx8YpRXVrkudgRD1pA6JMsE9+gtwe/Rl3DPI0PPzXKhoXfksfz7xzBiYFs0GmR8LNAoUzmC1pY/o+oMPZtLerOsm7ddV2v28WLbJmzxHJo/xkPjodaHKq6SVECgYAxGLHa5x2CMKijujfW8Vin3UT62g+hvW5anvO5fMF+D4jp7t6iUGO7hrl2yrFhNNrwjjchi02A0bB60tlx8ThfPnIUNdvuYfpprVsjxfUgQ7zzSq1qg650m2ghHRLtnXi34ny20fkc3AypyfRxM7cMUAUrWIBw7nm7H7aBkh+xAQKBgH4Zaxjcn/OsF4QPCJqzf02+zHh7FGGLnsjZXmtVoNDmmFJFXj5ey05jfcNyoRdtffl0Fa/mbkiL1YcAUoBmkyS7MA4mrrM5vG5ZKtLcul1qeC9JrJ2FEcZBmny2fdbfzFFuBdhz0jbOGoDOKl5KWM7EQoxk377DQVRQ884B0Cc+' # 生产环境电脑端应用私钥
ALIPAY_PUBLIC_KEY_PRODUCTION_PC = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAomw6g4rBmCr/QoX3NI3DVLyDpkaUytZ2uFhdfQaegIDAuUfZfgpTCASlAtO82t8ISAbSOSyp9CUpwdGV4EYOiCBbLxMYB6taaHPiIjJ1zNT1EakJzWgU53hz1AVeABB9kdAvMqSvjH6KLoVupmqm4Li8ZwDW9M2ANAmyDfKgiF0Lt4aUUnaZktoCrTWTkpmtfRZCHNACj851IllvN2wyC4OL7dJq5UzOFxmn07Dy/2z4UAhaaSAyRVawpOui5AIYJTXZERLYL3KMyRnMuZoFq3xltzVTzRPM06nRa9RfeVNVwWVtGBIe/r8tcg5wyhI57KUszGNOmUIm/se6G2lnAQIDAQAB' # 生产环境电脑端支付宝公钥
ALIPAY_APP_ID_PRODUCTION_MOBILE = '2021004169658094' # 生产环境移动端应用ID
ALIPAY_APP_PRIVATE_KEY_PRODUCTION_MOBILE = 'MIIEowIBAAKCAQEAlkLen9IPB0OhhRnDw0Ks1yX74oXSLJ4hEaqQmJqXI8qfNFL+DiuEWs+yAZRad8mDOUqERka1YrMI9Y7iVyGWhcFRHe91+oNNDZlrXp1K/SzPWtA1tPbkBrgxV5lgj/fGKJrMlJhlfF7Bio8b9jOfyMtaqolP777tD0zMAdIbKYCW1wmUgUeRsNplDO/8GIDoJV+qGxTEd2TN3eJfC9MBIkCW/b1QHTXukJIFzKGufNRNJIWbPi/wmyMaUd+lyemz//sNhD2+CpiuB4pi/v3c8tQsPJeOslRpo9+T0lg9wLlDgMMeajf+PMzjErRmiOxI1ZwNn8xkaE6ZfeDhh18v1wIDAQABAoIBAQCQ225bjNpIGn8AHdKHzyNpVoj53CC+OsOOkGxNcdr6+j945fleF73E/i2RMD/28yG6fYf/Z/M9b3PXpyO09AB0eeWFgnCuTR5fWeQUlnbQk/5igg8Eom85uyB2XrqkkC1Mv88yAaj0uTTEKyq9sw77OG/zr+SML/fBpDuYFcFxw7JnD+TxKBeqT6gd1RHcfeyta1MWiEsQeX7y2PGicn5HjbGLCsJxvJVGyvaQFPBN5eoIesSm74DEFL25ZdR1vpaWYGm7XZgAY6dgzPbijFx2nLMRAM9e+M6I0u75k0mDSVb9y+1TXqEKPSG7FegIbzhylj20ZcwWYb0SgJ8sHuvBAoGBAOcRBlbtkq4uGqFyTY1y1WedxSMJf0bMfYum3CvT7YAOVffVxye2I3s4v1Os1NPR5M+om7eEtgN+9Zl2DIagPlTB6CrYRg26hwnDuNhLqLZHo8IW0IK2xY8QSPzvRJcx1sSvTqLXG/MdsFDV9SGNxYazYpIqlL2Q2cUHImc6+JqZAoGBAKZ5rnVPlOQ20aXCe/0nn7K6PIFCQhBHayBjXmqaNi7ZGVgM1CXrvFffpGrc7e60gVfbOkZjzUy0XJAmagYTNZ8+HDh52y6YRoMR3XjPKgrs4+hdraG1vBVSmxRpzUfYqqq+k9T2dnK3pjkYIrDZiiwsT57o2EispQBWRfNmKZPvAoGAeclBXCPPgbqPErTaJ0l1LS28r+DbkodJTIff18HVlf74VK36T/Xx8YpRXVrkudgRD1pA6JMsE9+gtwe/Rl3DPI0PPzXKhoXfksfz7xzBiYFs0GmR8LNAoUzmC1pY/o+oMPZtLerOsm7ddV2v28WLbJmzxHJo/xkPjodaHKq6SVECgYAxGLHa5x2CMKijujfW8Vin3UT62g+hvW5anvO5fMF+D4jp7t6iUGO7hrl2yrFhNNrwjjchi02A0bB60tlx8ThfPnIUNdvuYfpprVsjxfUgQ7zzSq1qg650m2ghHRLtnXi34ny20fkc3AypyfRxM7cMUAUrWIBw7nm7H7aBkh+xAQKBgH4Zaxjcn/OsF4QPCJqzf02+zHh7FGGLnsjZXmtVoNDmmFJFXj5ey05jfcNyoRdtffl0Fa/mbkiL1YcAUoBmkyS7MA4mrrM5vG5ZKtLcul1qeC9JrJ2FEcZBmny2fdbfzFFuBdhz0jbOGoDOKl5KWM7EQoxk377DQVRQ884B0Cc+' # 生产环境移动端应用私钥
ALIPAY_PUBLIC_KEY_PRODUCTION_MOBILE = 'MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEAomw6g4rBmCr/QoX3NI3DVLyDpkaUytZ2uFhdfQaegIDAuUfZfgpTCASlAtO82t8ISAbSOSyp9CUpwdGV4EYOiCBbLxMYB6taaHPiIjJ1zNT1EakJzWgU53hz1AVeABB9kdAvMqSvjH6KLoVupmqm4Li8ZwDW9M2ANAmyDfKgiF0Lt4aUUnaZktoCrTWTkpmtfRZCHNACj851IllvN2wyC4OL7dJq5UzOFxmn07Dy/2z4UAhaaSAyRVawpOui5AIYJTXZERLYL3KMyRnMuZoFq3xltzVTzRPM06nRa9RfeVNVwWVtGBIe/r8tcg5wyhI57KUszGNOmUIm/se6G2lnAQIDAQAB' # 生产环境移动端支付宝公钥
ALIPAY_NOTIFY_URL = 'https://www.typeframes.com.cn/api/alipay/notify/'
ALIPAY_RETURN_URL = 'https://www.typeframes.com.cn/user/userinfo/'
# settings.py
# PayPal 配置
PAYPAL_CLIENT_ID_SANDBOX = 'AfwWNEZE92XpbmoHywwdDEXH2x2Elak1Gxbireb5bv-u17OtKiJUuz7CMLnqayAZkqeU2kGtWXHXcXGS'
PAYPAL_SECRET_KEY_SANDBOX = 'ELmuFW7AspHp4km8amEhlM-NB3OGGx_iuqQbntTQ-2RTnJWbxdLTl6xlET1F1ezxSHbU1CUpK0_8ToI3'
PAYPAL_CLIENT_ID_PRODUCTION = 'YOUR_PRODUCTION_CLIENT_ID' # 替换为实际的生产环境客户端ID
PAYPAL_SECRET_KEY_PRODUCTION = 'YOUR_PRODUCTION_SECRET_KEY' # 替换为实际的生产环境密钥
PAYPAL_MODE = 'sandbox' #'sandbox' if DEBUG else 'live' # 根据DEBUG模式选择环境
PAYPAL_RETURN_URL = 'https://www.typeframes.ai/user/plan_list/' # 支付成功后跳转的URL
PAYPAL_CANCEL_URL = 'https://www.typeframes.ai/user/plan_list/' # 支付取消后跳转的URL
PAYPAL_WEBHOOK_ID = '5L31025588094031T' # 替换为你的实际 Webhook ID