mirror of
https://github.com/haiwen/seahub.git
synced 2025-07-16 08:16:55 +00:00
use inner file upload url when send post request inside seahub code. (#2055)
This commit is contained in:
parent
df7fd295a2
commit
f4cd577823
@ -18,7 +18,7 @@ from seahub.api2.utils import api_error
|
|||||||
from seahub.signals import rename_dirent_successful
|
from seahub.signals import rename_dirent_successful
|
||||||
|
|
||||||
from seahub.utils import check_filename_with_rename, is_pro_version, \
|
from seahub.utils import check_filename_with_rename, is_pro_version, \
|
||||||
gen_file_upload_url, is_valid_dirent_name, normalize_file_path, \
|
gen_inner_file_upload_url, is_valid_dirent_name, normalize_file_path, \
|
||||||
normalize_dir_path
|
normalize_dir_path
|
||||||
from seahub.utils.timeutils import timestamp_to_isoformat_timestr
|
from seahub.utils.timeutils import timestamp_to_isoformat_timestr
|
||||||
from seahub.views import check_folder_permission
|
from seahub.views import check_folder_permission
|
||||||
@ -196,8 +196,7 @@ class FileView(APIView):
|
|||||||
error_msg = 'Internal Server Error'
|
error_msg = 'Internal Server Error'
|
||||||
return api_error(status.HTTP_500_INTERNAL_SERVER_ERROR, error_msg)
|
return api_error(status.HTTP_500_INTERNAL_SERVER_ERROR, error_msg)
|
||||||
|
|
||||||
update_url = gen_file_upload_url(update_token, 'update-api')
|
update_url = gen_inner_file_upload_url('update-api', update_token)
|
||||||
|
|
||||||
# update file
|
# update file
|
||||||
new_file_path = posixpath.join(parent_dir, new_file_name)
|
new_file_path = posixpath.join(parent_dir, new_file_name)
|
||||||
try:
|
try:
|
||||||
|
@ -68,7 +68,7 @@ from seahub.utils import gen_file_get_url, gen_token, gen_file_upload_url, \
|
|||||||
gen_file_share_link, gen_dir_share_link, is_org_context, gen_shared_link, \
|
gen_file_share_link, gen_dir_share_link, is_org_context, gen_shared_link, \
|
||||||
get_org_user_events, calculate_repos_last_modify, send_perm_audit_msg, \
|
get_org_user_events, calculate_repos_last_modify, send_perm_audit_msg, \
|
||||||
gen_shared_upload_link, convert_cmmt_desc_link, is_valid_dirent_name, \
|
gen_shared_upload_link, convert_cmmt_desc_link, is_valid_dirent_name, \
|
||||||
is_org_repo_creation_allowed, is_windows_operating_system, \
|
is_org_repo_creation_allowed, \
|
||||||
get_no_duplicate_obj_name, normalize_dir_path
|
get_no_duplicate_obj_name, normalize_dir_path
|
||||||
|
|
||||||
from seahub.utils.file_revisions import get_file_revisions_after_renamed
|
from seahub.utils.file_revisions import get_file_revisions_after_renamed
|
||||||
|
@ -11,7 +11,7 @@ from django.views.decorators.csrf import csrf_exempt
|
|||||||
from seaserv import seafile_api
|
from seaserv import seafile_api
|
||||||
|
|
||||||
from .settings import VERIFY_ONLYOFFICE_CERTIFICATE
|
from .settings import VERIFY_ONLYOFFICE_CERTIFICATE
|
||||||
from seahub.utils import gen_file_upload_url
|
from seahub.utils import gen_inner_file_upload_url
|
||||||
|
|
||||||
# Get an instance of a logger
|
# Get an instance of a logger
|
||||||
logger = logging.getLogger(__name__)
|
logger = logging.getLogger(__name__)
|
||||||
@ -59,7 +59,7 @@ def onlyoffice_editor_callback(request):
|
|||||||
if not update_token:
|
if not update_token:
|
||||||
return HttpResponse('{"error": 0}')
|
return HttpResponse('{"error": 0}')
|
||||||
|
|
||||||
update_url = gen_file_upload_url(update_token, 'update-api')
|
update_url = gen_inner_file_upload_url(update_token, 'update-api')
|
||||||
|
|
||||||
files = {
|
files = {
|
||||||
'file': file_content,
|
'file': file_content,
|
||||||
|
@ -474,8 +474,8 @@ def _file_view(request, repo_id, path):
|
|||||||
wopi_dict = get_wopi_dict(username, repo_id, path,
|
wopi_dict = get_wopi_dict(username, repo_id, path,
|
||||||
action_name, request.LANGUAGE_CODE)
|
action_name, request.LANGUAGE_CODE)
|
||||||
|
|
||||||
wopi_dict['doc_title'] = doc_title
|
|
||||||
if wopi_dict:
|
if wopi_dict:
|
||||||
|
wopi_dict['doc_title'] = doc_title
|
||||||
send_file_access_msg(request, repo, path, 'web')
|
send_file_access_msg(request, repo, path, 'web')
|
||||||
return render_to_response('view_wopi_file.html', wopi_dict,
|
return render_to_response('view_wopi_file.html', wopi_dict,
|
||||||
context_instance=RequestContext(request))
|
context_instance=RequestContext(request))
|
||||||
|
@ -23,7 +23,7 @@ from seahub.share.models import FileShare, UploadLinkShare, \
|
|||||||
from seahub.views import gen_path_link, get_repo_dirents, \
|
from seahub.views import gen_path_link, get_repo_dirents, \
|
||||||
check_folder_permission
|
check_folder_permission
|
||||||
|
|
||||||
from seahub.utils import gen_file_upload_url, gen_dir_share_link, \
|
from seahub.utils import gen_dir_share_link, \
|
||||||
gen_shared_upload_link, user_traffic_over_limit, render_error, \
|
gen_shared_upload_link, user_traffic_over_limit, render_error, \
|
||||||
get_file_type_and_ext
|
get_file_type_and_ext
|
||||||
from seahub.settings import ENABLE_UPLOAD_FOLDER, \
|
from seahub.settings import ENABLE_UPLOAD_FOLDER, \
|
||||||
@ -63,19 +63,6 @@ def get_nav_path(path, repo_name):
|
|||||||
def is_no_quota(repo_id):
|
def is_no_quota(repo_id):
|
||||||
return True if seaserv.check_quota(repo_id) < 0 else False
|
return True if seaserv.check_quota(repo_id) < 0 else False
|
||||||
|
|
||||||
def get_upload_url(request, repo_id):
|
|
||||||
username = request.user.username
|
|
||||||
if check_folder_permission(request, repo_id, '/') == 'rw':
|
|
||||||
token = seafile_api.get_fileserver_access_token(repo_id,
|
|
||||||
'dummy', 'upload', username)
|
|
||||||
|
|
||||||
if not token:
|
|
||||||
return ''
|
|
||||||
|
|
||||||
return gen_file_upload_url(token, 'upload')
|
|
||||||
else:
|
|
||||||
return ''
|
|
||||||
|
|
||||||
def get_fileshare(repo_id, username, path):
|
def get_fileshare(repo_id, username, path):
|
||||||
if path == '/': # no shared link for root dir
|
if path == '/': # no shared link for root dir
|
||||||
return None
|
return None
|
||||||
|
@ -1,7 +0,0 @@
|
|||||||
from seahub.views.repo import get_upload_url
|
|
||||||
from seahub.test_utils import BaseTestCase
|
|
||||||
|
|
||||||
class GetUploadUrlTest(BaseTestCase):
|
|
||||||
def test_can_get(self):
|
|
||||||
rst = get_upload_url(self.fake_request, self.repo.id)
|
|
||||||
assert '8082' in rst
|
|
Loading…
Reference in New Issue
Block a user