Message Signature
1. Request.signMessage
Parameters
Response
Example
import { Request } from "favorlet.js";
const response = await Request.signMessage({
chainId: 8217, // 해당 체인 id
appName: "BlockChainApp", // FAVORLET 앱에 노출
from: "0x{address in hex}", // 서명할 지갑 주소
message: "서명할 메세지", // 서명할 메세지
});
console.log(response);
/*
{
requestId: "c8393195-b49d-4586-b3fd-0e1a1e94f189",
expiredAt: 1667891117,
}
*/
2. createDeepLink
Parameters
Response
Example
import { createDeepLink } from "favorlet.js";
const deepLink = createDeepLink(response.requestId); // Request를 통해 받은 requestId
/*
- PC: 생성된 deepLink를 qrcode 라이브러리를 이용하여 QR 생성 후 스마트폰으로 스캔
- Mobile: window.location.href 등을 사용하여 생성된 deepLink로 직접 이동
*/
console.log(deepLink);
// https://app.favorlet.link/?requestId=c8393195-b49d-4586-b3fd-0e1a1e94f189
3. receipt
import { receipt } from "favorlet.js";
const result = await receipt(response.requestId); // Request를 통해 받은 requestId
console.log(result);
/*
- status에 따라 이후 분기 처리
### requested
{
requestId: "c8393195-b49d-4586-b3fd-0e1a1e94f189",
expiredAt: 1667891117,
action: "signMessage",
signMessage: {
status: "requested"
}
}
### canceled
{
requestId: "c8393195-b49d-4586-b3fd-0e1a1e94f189",
expiredAt: 1667891117,
action: "signMessage",
signMessage: {
status: "canceled",
signature: null,
errorMessage: null
}
}
### succeed
{
requestId: "c8393195-b49d-4586-b3fd-0e1a1e94f189",
expiredAt: 1667891117,
action: "signMessage",
signMessage: {
status: "succeed",
signature: "c308c6bc851cdaf8a125b2990753f376e3660f9f98a4c515de9e8c0fbd98f2cf3db519a7ba4dab78d001232b6f55b24896a57e3264cafe3dda78a89ecfb0bb141b",
errorMessage: null
}
}
*/
Last updated