diff --git a/lnurl.py b/lnurl.py index 2f06426..b192137 100644 --- a/lnurl.py +++ b/lnurl.py @@ -38,7 +38,7 @@ async def api_lnurl_response(request: Request, unique_hash: str): raise HTTPException( status_code=HTTPStatus.NOT_FOUND, detail="Withdraw is spent." ) - url = request.url_for("withdraw.api_lnurl_callback", unique_hash=link.unique_hash) + url = str(request.url_for("withdraw.api_lnurl_callback", unique_hash=link.unique_hash)) # Check if url is .onion and change to http if urlparse(url).netloc.endswith(".onion"): @@ -195,7 +195,7 @@ async def api_lnurl_multi_response(request: Request, unique_hash: str, id_unique status_code=HTTPStatus.NOT_FOUND, detail="LNURL-withdraw not found." ) - url = request.url_for("withdraw.api_lnurl_callback", unique_hash=link.unique_hash) + url = str(request.url_for("withdraw.api_lnurl_callback", unique_hash=link.unique_hash)) # Check if url is .onion and change to http if urlparse(url).netloc.endswith(".onion"): diff --git a/models.py b/models.py index 6b4ba0e..f9c09f7 100644 --- a/models.py +++ b/models.py @@ -49,24 +49,24 @@ class WithdrawLink(BaseModel): usescssv = self.usescsv.split(",") tohash = self.id + self.unique_hash + usescssv[self.number] multihash = shortuuid.uuid(name=tohash) - url = req.url_for( + url = str(req.url_for( "withdraw.api_lnurl_multi_response", unique_hash=self.unique_hash, id_unique_hash=multihash, - ) + )) else: - url = req.url_for( + url = str(req.url_for( "withdraw.api_lnurl_response", unique_hash=self.unique_hash - ) + )) - return lnurl_encode(str(url)) + return lnurl_encode(url) def lnurl_response(self, req: Request) -> LnurlWithdrawResponse: - url = req.url_for( + url = str(req.url_for( name="withdraw.api_lnurl_callback", unique_hash=self.unique_hash - ) + )) return LnurlWithdrawResponse( - callback=ClearnetUrl(str(url), scheme="https"), + callback=ClearnetUrl(url, scheme="https"), k1=self.k1, minWithdrawable=MilliSatoshi(self.min_withdrawable * 1000), maxWithdrawable=MilliSatoshi(self.max_withdrawable * 1000),