Hi – I'm trying to port my old functions to the new 1.4.5 way.
I manage to get a simple working function that simply sends back a string.
However, I can't manage to make my function list some documents and send them back.
It seems that the appwrite client is able to connect, but as soon as I include code to query the database it just gets a 500 error without any logs except : An internal curl error has occurred within the executor! Error Msg: Http invalid protocol\nError Code: 500
Here is a minimal version of my not working code, maybe I forgot something..
def main(context):
# Setup client
client = Client()
endpoint = "https://devback.banquise.app/v1"
project_id = os.environ['APPWRITE_FUNCTION_PROJECT_ID']
api_key = os.environ["APPWRITE_FUNCTION_API_KEY"]
client.set_endpoint(endpoint).set_project(project_id).set_key(api_key)
# Log environment variables
context.log(project_id)
context.log(api_key)
# Initialize database
database = Databases(client)
# Fetch user ID from header
user_id = context.req.headers["x-appwrite-user-id"]
context.log(user_id)
# Get payload from request body
payload = context.req.body
context.log(payload)
# Fetch and send the feed
try:
final_feed = database.list_documents('62e0fd2xxxxxxx', '62e0fe08axxxxxxxx')["documents"]
context.log(final_feed)
return context.res.send(str(final_feed))
except Exception as e:
context.error(e)
return context.res.send(e, 500)
Thank you by advance!
Try wrapping the error withstr(e) to convert to string.
Also can you try leaving the 500 status code out?
Thanks for your answer, so I tried changing the script to this :
try:
final_feed = database.list_documents('62e0fd281976e7171db9', '62e0fe08a4a5d6592df2')["documents"]
context.log(final_feed)
return context.res.send(str(final_feed))
except Exception as e:
context.log(e)
return context.res.send(str(e))
But now it gives me an "operation timed out" error.
Any ideas ?
tried lots of different configurations... it's still happening – any ideas ?
maybe related with https://discord.com/channels/564160730845151244/1162099630494973982
Recommended threads
- Function domain not available
Hello, even tho in docs you clearly describe that every function has its domain, I can not see it anywhere in any of my projects. How do I reveal the url of th...
- Inquiry: How to Reduce Cold Start Durati...
Hey! I was using Python for the function runtime, but after reading that Go has the fastest runtime, I switched my code over to Go. However, I'm still seeing co...
- After a GET request is passed to functio...
Create execution in the console can normally retrieve the get parameters。WHy?