【LINE】 LIFF 앱을 사용해보세요 ~ 웹에서 토크로 메시지 보내기 ~
개요
마지막까지 기사에서 LIFF 앱을 만들어 LINE 토크에서 실행하여 사용자 정보를 얻고 토크에 메시지를 보내려고했습니다
설정
구현
sendMessages()
를 사용했습니다.src/hooks/useLiff.js
// 抜粋
const sendMessage = async ({ text }) => {
setLoading(true);
try {
// メッセージを送信
liff.sendMessages([{ type: 'text', text }]);
console.log(`success send message: ${text}`);
} catch (error) {
console.log({ error });
setError(error);
} finally {
setLoading(false);
}
};
isInClient()
에서 LINE에서 열려 있는지 여부를 결정할 수 있습니다 shareTargetPicker()
에서 Share Target Picker를 볼 수 있습니다 src/hooks/useLiff.js
// 抜粋
const sendMessage = async ({ text }) => {
setLoading(true);
try {
// LINEアプリ上で開かれているかを判定
liff.isInClient()
// LINEアプリ上なら今まで通り開いているトークに送信
? liff.sendMessages([{ type: 'text', text }])
// ブラウザなら送信先選択画面を表示
: liff.shareTargetPicker([{ type: 'text', text }]);
console.log(`success send message: ${text}`);
} catch (error) {
console.log({ error });
setError(error);
} finally {
setLoading(false);
}
};
src/hooks/useLiff.js
const initLiff = async ({ liffId }) => {
setLoading(true);
try {
await liff.init({ liffId });
console.log('success liff init');
// ログインチェック処理を追加
if (liff.isLoggedIn()) {
console.log('logged in!');
} else {
console.log('not logged in');
// LINEの提供するログイン画面へリダイレクトさせる(完了するともとのページにリダイレクトされる)
liff.login();
}
} catch (error) {
console.log({ error });
setError(error);
} finally {
setLoading(false);
}
};
동작 확인
요약
Reference
이 문제에 관하여(【LINE】 LIFF 앱을 사용해보세요 ~ 웹에서 토크로 메시지 보내기 ~), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/ozaki25/items/cc4c17cc25a0bf25f964텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)