dev-api-aliases #5
@ -3,13 +3,14 @@ package http
|
||||
import (
|
||||
"bytes"
|
||||
"context"
|
||||
"fmt"
|
||||
"encoding/json"
|
||||
"errors"
|
||||
"fmt"
|
||||
"io"
|
||||
"log"
|
||||
"net/http"
|
||||
"net/url"
|
||||
"regexp"
|
||||
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/config"
|
||||
"git.grassecon.net/grassrootseconomics/sarafu-api/models"
|
||||
@ -17,6 +18,11 @@ import (
|
||||
dataserviceapi "github.com/grassrootseconomics/ussd-data-service/pkg/api"
|
||||
)
|
||||
|
||||
var (
|
||||
aliasRegex = regexp.MustCompile("^\\+?[a-zA-Z0-9\\-_]+$")
|
||||
searchDomain = ".sarafu.eth"
|
||||
|
||||
)
|
||||
|
||||
type HTTPAccountService struct {
|
||||
}
|
||||
|
||||
@ -220,8 +226,17 @@ func (as *HTTPAccountService) CheckAliasAddress(ctx context.Context, alias strin
|
||||
return &r, err
|
||||
}
|
||||
|
||||
// TODO: Use actual custodial api to request available alias
|
||||
func (as *HTTPAccountService) RequestAlias(ctx context.Context, publicKey string, hint string) (*models.RequestAliasResult, error) {
|
||||
lash
commented
Can't we just point this to devapi.RequestAlias? Can't we just point this to devapi.RequestAlias?
carlos
commented
@lash Nice catch.Actually that brings up an idea,could we use the same implementation of the devapi to resolve the alias' address given that the api always returns the same address? @lash Nice catch.Actually that brings up an idea,could we use the same implementation of the devapi to resolve the alias' address given that the api always returns the same address?
lash
commented
yes for sure, while we wait or the api implementation. yes for sure, while we wait or the api implementation.
|
||||
return nil, fmt.Errorf("not yet implemented")
|
||||
var alias string
|
||||
if !aliasRegex.MatchString(hint) {
|
||||
return nil, fmt.Errorf("alias hint does not match: %s", publicKey)
|
||||
}
|
||||
alias = hint
|
||||
alias = alias + searchDomain
|
||||
return &models.RequestAliasResult{
|
||||
Alias: alias,
|
||||
}, nil
|
||||
}
|
||||
|
||||
// TODO: remove eth-custodial api dependency
|
||||
|
Loading…
Reference in New Issue
Block a user
THe searchdomain should not be necessary here