Refactor homeserver lookup code #12

Merged
bad merged 10 commits from refactor-homeserver-lookup into princess 2020-10-23 08:57:01 +00:00
1 changed files with 4 additions and 3 deletions
Showing only changes of commit 61cc4a19f3 - Show all commits

View File

@ -119,19 +119,20 @@ class Form extends ElemJS {
maxDepth--
if(maxDepth<=0) throw new Error(`Failed to look up homeserver, maximum search depth reached`)
//Preprocess the address
if (!address.match(/^https?:\/\//)) {
console.warn(`${address} doesn't specify the protocol, assuming https`)
address = "https://" + address
}
address = address.replace(/\/*$/, "")
this.status(`Looking up homeserver... trying ${address}`)
// check if we found the actual matrix server
// Check if we found the actual matrix server
try {
const versionsReq = await fetch(`${address}/_matrix/client/versions`)
if(versionsReq.ok) {
const versions = await versionsReq.json().catch(()=>{})
const versions = await versionsReq.json()
if (Array.isArray(versions.versions)) {
return address
}