Hi All,
I was previously using version 2.1.3. This worked until the end of last month when it started to get an access_token KeyError, stack trace below:
Traceback (most recent call last):
File "/usr/local/lib/python3.7/site-packages/celery/app/trace.py", line 385, in trace_task
R = retval = fun(*args, **kwargs)
File "/usr/local/lib/python3.7/site-packages/celery/app/trace.py", line 648, in __protected_call__
return self.run(*args, **kwargs)
File "/code/carbon_service/tasks.py", line 9, in update
�
)
File "/code/carbon_service/services/Update.py", line 117, in update
upload_file(context=ctx, doc_library='XXX', pdf_file=f, metadata=metadata)
File "/code/carbon_service/services/Update.py", line 48, in upload_file
file = upload_file_into_library(library, metadata.pop('Name'), file_content, metadata=metadata)
File "/code/carbon_service/services/Update.py", line 35, in upload_file_into_library
context.execute_query()
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_runtime_context.py", line 38, in execute_query
self.pending_request.execute_query()
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_request.py", line 32, in execute_query
return self.execute_pending_queries()
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_request.py", line 38, in execute_pending_queries
response = self.execute_request_direct(request)
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_request.py", line 105, in execute_request_direct
self.context.authenticate_request(request_options)
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_runtime_context.py", line 16, in authenticate_request
self.__auth_context.authenticate_request(request)
File "/usr/local/lib/python3.7/site-packages/office365/runtime/auth/authentication_context.py", line 37, in authenticate_request
request_options.set_header('Authorization', self.provider.get_authorization_header())
File "/usr/local/lib/python3.7/site-packages/office365/runtime/auth/acs_token_provider.py", line 76, in get_authorization_header
return 'Bearer {0}'.format(self.access_token["access_token"])
KeyError: 'access_token'
I've tried creating a newly registered app in SharePoint without any luck. (It stopped working exactly 12 months after I set it up making me think it was a permissions expiry problem.)
Next, I tried updating to the latest version (2.1.7.post1) on pypi which just gives me new errors but I think I am past the permissions problem?
Traceback (most recent call last):
File "<console>", line 1, in <module>
File "/code/carbon_service/services/Update.py", line 118, in update
upload_file(context=ctx, doc_library='XXX', pdf_file=f, metadata=metadata)
File "/code/carbon_service/services/Update.py", line 49, in upload_file
file = upload_file_into_library(library, metadata.pop('Name'), file_content, metadata=metadata)
File "/code/carbon_service/services/Update.py", line 36, in upload_file_into_library
context.execute_query()
File "/usr/local/lib/python3.7/site-packages/office365/sharepoint/client_context.py", line 43, in execute_query
super(ClientContext, self).execute_query()
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_runtime_context.py", line 37, in execute_query
self.pending_request.execute_query()
File "/usr/local/lib/python3.7/site-packages/office365/runtime/client_request.py", line 30, in execute_query
for request in self.build_request():
File "/usr/local/lib/python3.7/site-packages/office365/runtime/odata/odata_request.py", line 35, in build_request
self._events['before'](request, qry)
File "/usr/local/lib/python3.7/site-packages/office365/sharepoint/client_context.py", line 47, in _build_specific_query
self.ensure_form_digest(request)
File "/usr/local/lib/python3.7/site-packages/office365/sharepoint/client_context.py", line 26, in ensure_form_digest
self.request_form_digest()
File "/usr/local/lib/python3.7/site-packages/office365/sharepoint/client_context.py", line 37, in request_form_digest
payload = payload['d']['GetContextWebInformation']
KeyError: 'd'
Any and all help would be appreciated! Kudos to @vgrem who helped me just over 12 months ago today!
Code thats failing:
def upload_file_into_library(target_library, name, content, metadata):
target_library.context.json_format.metadata = 'verbose'
context = target_library.context
info = FileCreationInformation()
info.content = content
info.url = name
info.overwrite = True
target_file = target_library.files.add(info)
context.execute_query()
item = target_file.listitem_allfields
for k, v in metadata.items():
item.set_property(name=k, value=v)
item.update()
context.execute_query()
return target_file
Hi All,
I was previously using version 2.1.3. This worked until the end of last month when it started to get an access_token KeyError, stack trace below:
I've tried creating a newly registered app in SharePoint without any luck. (It stopped working exactly 12 months after I set it up making me think it was a permissions expiry problem.)
Next, I tried updating to the latest version (2.1.7.post1) on pypi which just gives me new errors but I think I am past the permissions problem?
Any and all help would be appreciated! Kudos to @vgrem who helped me just over 12 months ago today!
Code thats failing: