line 社交登录 php demo

<?php

// 引入 LINE Login SDK
require_once __DIR__ . '/vendor/autoload.php';

// 使用 Composer 自动加载
use LINE\LINEBot\HTTPClient\CurlHTTPClient;
use LINE\LINEBot;

// 設定 LINE Login 的 Channel ID 和 Channel Secret
$channelId = 'YOUR_CHANNEL_ID'; 
$channelSecret = 'YOUR_CHANNEL_SECRET';

// 建立 LINE Bot SDK 实例
$httpClient = new CurlHTTPClient('YOUR_CHANNEL_ACCESS_TOKEN');
$bot = new LINEBot($httpClient, ['channelSecret' => $channelSecret]);

// 建立 LINE Login 的設定
$config = [
    'channelId' => $channelId,
    'channelSecret' => $channelSecret,
    'callbackUrl' => 'http://your-website.com/callback.php', // 設定回调 URL
];

// 建立 LINE Login 实例
$lineLogin = new \LINE\LINEBot\Login\LINELogin($config);

// 处理 LINE Login 的请求
if (isset($_GET['code'])) {
    // 获取 Access Token
    try {
        $accessToken = $lineLogin->retrieveAccessToken($_GET['code']);
        // 使用 Access Token 获取用户信息
        $userProfile = $lineLogin->verifyAccessToken($accessToken);

        // 处理用户信息,例如:保存到数据库
        // ...

        // 跳转到成功页面
        header('Location: success.php');
        exit;
    } catch (\Exception $e) {
        // 处理错误
        echo "Error: " . $e->getMessage();
    }
} else {
    // 生成 LINE Login 的授权 URL
    $authUrl = $lineLogin->generateAuthUrl();

    // 跳转到 LINE Login 授权页面
    header('Location: ' . $authUrl);
    exit;
}

步骤:

  1. 创建 LINE Login Channel:
    • 在 LINE Developers Console 上创建一个新的 LINE Login channel。
    • 获取 Channel ID 和 Channel Secret。
  2. 安装 LINE Bot SDK:
    • 使用 Composer 安装 SDK:composer require line/line-bot-sdk
  3. 创建 index.php 文件:
    • 将上面的代码粘贴到 index.php 文件中。
    • 替换 YOUR_CHANNEL_ID 和 YOUR_CHANNEL_SECRET 为你的实际值。
    • 将 http://your-website.com/callback.php 替换为你的回调 URL。
  4. 创建 callback.php 文件:
    • 创建一个名为 callback.php 的文件,用于处理 LINE Login 回调。
    • 在 callback.php 中,你可以获取用户信息并执行其他操作,例如将用户重定向到成功页面。
  5. 运行你的应用程序:
    • 将你的应用程序部署到 Web 服务器。
    • 访问你的应用程序的 URL,你将被重定向到 LINE Login 页面。
    • 使用你的 LINE 帐户登录,你将被重定向回你的应用程序,并可以访问用户信息。

注意:

  • 在生产环境中,请确保使用 HTTPS 协议来保护你的应用程序和用户数据。
  • 你需要在 LINE Developers Console 中配置你的回调 URL。

评论

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注