innerwang 发表于 2024-6-27 17:44:15

在线表格编辑器 license 过期问题

本帖最后由 Joestar.Xu 于 2024-7-11 10:56 编辑

调研编号:SJS-25346

过期后,在线表格设计器代码执行时,会抛如下错误


这里能不能直接抛错 license 过期?

Joestar.Xu 发表于 2024-6-28 16:56:49

您好,当SpreadJS的授权过期后,会直接在页面上显示如下图的过期信息:



这个时候使用者就会意识到授权已经过期,为什么还要直接抛出一个错误来提示授权过期呢?

另外,具体是调用了哪些代码才会在授权过期时出现这些问题呢?

innerwang 发表于 2024-7-1 14:20:18

Joestar.Xu 发表于 2024-6-28 16:56
您好,当SpreadJS的授权过期后,会直接在页面上显示如下图的过期信息:




你好,上面是 表格设计器 Designer 组件在 license 过期后的抛错,不是 SpreadJS, 再给看一下的呢?

Joestar.Xu 发表于 2024-7-1 15:25:28



您好,如上图,设计器也会和SpreadJS一样在界面上显示无效授权的字样。本地测试中也没有出现报错的情况。需要您提供一个可以复现此问题的Demo,这边结合实际Demo调研看看呢。

innerwang 发表于 2024-7-10 16:26:33

本帖最后由 innerwang 于 2024-7-10 16:33 编辑

Joestar.Xu 发表于 2024-7-1 15:25
您好,如上图,设计器也会和SpreadJS一样在界面上显示无效授权的字样。本地测试中也没有出现报错的情况 ...
问题原因出现在,后续还会进行一些 designer 的自定义配置,此时就会导致抛错



有没有什么方式,可以在注册完 license 后知道是否已经过期?

Joestar.Xu 发表于 2024-7-10 17:47:15

您好,您描述的情况我了解了,这边调研一下,后续有进展我会在本贴中回复您。

Joestar.Xu 发表于 2024-7-12 12:13:36

您好,SpreadJS原生上没有提供相关的接口可以检查license的注册情况,不过您可以在系统运行前执行一个检查来判断授权是否有效:

import React from 'react'
import ReactDOM from 'react-dom/client'
import App from './App'
import './index.css'
import '@grapecity/spread-sheets-resources-zh'
import * as GC from '@grapecity/spread-sheets-designer'


function getDefaultLicense() {
return {
    SHEETS_LICENSE_KEY: 'guanyuanshuju,776598819366453#B1nSyzcjZUVRFXOvIVWi3UcFNjWoNFNI9WZWtUZGVEN6lzUnt4d6kXR5UWQyEUV9Qlc7ZGVGdGRVFUe6BVbUpXOINzKtBDeYxmVMd4cvYVTkBlQHlkewE5VpVjRHhHODpkamBlWR3yK4FUZodUYNBDWO3maa9GUp5EeLdzUIRnUuVzRLJWdzJ4VHl4b9I7VSBFevolYYpERsd4a8AHb4wUciNkVZVDV9kHW7onah56U8JDavc7ZWVjVGRlcvVEOQVVWG3yL6ATSaZ4UyQFb7R7Yq9GWSRkSYVXSZFHVP9UVtxGZLp7aYd7MvkVaUZGOs3CaiojITJCLiI4MEBTOzQjNiojIIJCLygzMyETN8YzN0IicfJye&Qf35VficFVDplI0IyQiwiI6EjL6ByUKBCZhVmcwNlI0IiTis7W0ICZyBlIsIiNzkDMwEDI9AjNwMjMwIjI0ICdyNkIsIiNwITMzIDMyIiOiAHeFJCLi8ajmDblmz9voz9voL8po19tl7anmLiOiEmTDJCLiMTN4YjNzkTM8gTO5YzN7IiOiQWSiwSfdtlOicGbmJCLlNHbhZmOiI7ckJye0ICbuFkI1pjIEJCLi4TPRZUVFFneZVWOyYGZWJGVj3ycrtyTUt4QnFWbFBTdqZnQC9WOy5UOhh6QPdjV6YUe9gFVvgTM5UES9siT8glWj3CW8cGdq94ds5GezJWQnJjYCVFVRN6KvxmVQJDT5NDZ5V5jmu0',
    SHEETS_DESIGNER_LICENSE_KEY: 'guanyuanshuju,666326449326546#B1k4y9QkbV9UQ7d4dCd6bwMXMyokNBJDT7JUTwxUOyMHRVdWTnRHdItGZ8YlW6ZmY7A5QRJXNuZzMYN4RIpmdXFGVQZWNVdzTwEEey4UT5FFZ4pnVnJUTR5mQqZ4TqpmbodGCKBFW034bJdTSWhkZihnbPhnRxdDbzgEayAVdKxGaLZlbntyYqhlMJJjaStCZod5UvYUVWpnM92mc0dmaXlzVEtWYjpFaKZmUMpmViVGUDR5Q8FmSuVndWhjQn3EOup7Vs5kRrNzKGhzZoFEcxF6L6hTV8YmRS3EcvVDdVZVSuNTSxQmQatmUiojITJCLiEjMwU4NzYkI0ICSiwCM6kzNxcDM7MTM0IicfJye&Qf35Vfi4EU9cjI0IyQiwiI6EjL6BibvRGZB5icl96ZpNXZE5yUKRWYlJHcTJiOi8kI1tlOiQmcQJCLiUDNwEDMxASOwYDMzIDMyIiOiQncDJCLiYDMyEzMyAjMiojIwhXRiwiIu6o9wWp9c+L0c+L0CeK0eeb9t6p9iojIh94QiwiI6QTN6IzM9QDN6IzM6YjNiojIklkI1pjIEJCLi4TPRF4Nlx4YI3SY4dXSj3GWwkXYR34Y8VUOtd6ciZVMvEzb9ljerJ5VqlTMsFzTXlWejpWeDd7S8UnRNJkYO3iRmhzMNVGZydmR8Bldw3SR7pWUWdDW4YDS6IUZRdDV5hEN78mZycVaEV6Q0EFP5',
}
}

function registerLicenseKey() {
if (!GC) return
const license = getDefaultLicense()
if (!GC.Spread.Sheets.LicenseKey) {
    GC.Spread.Sheets.LicenseKey = license.SHEETS_LICENSE_KEY
}
if (!GC.Spread.Sheets.Designer.LicenseKey) {
    GC.Spread.Sheets.Designer.LicenseKey = license.SHEETS_DESIGNER_LICENSE_KEY
}
}

registerLicenseKey();
let invalidLicense = false;
try {
debugger;
let dummyDom = document.createElement('div');
let designer = new GC.Spread.Sheets.Designer.Designer(dummyDom);
designer.setConfig({ ...GC.Spread.Sheets.Designer.DefaultConfig });

} catch (e) {
invalidLicense = true;
document.body.innerHTML = `<h1>Invalid License</h1>`;
}

if (!invalidLicense) {
ReactDOM.createRoot(document.getElementById('root')!).render(
    <React.StrictMode>
      <App />
    </React.StrictMode>
)
}

innerwang 发表于 2024-7-15 09:07:40

Joestar.Xu 发表于 2024-7-12 12:13
您好,SpreadJS原生上没有提供相关的接口可以检查license的注册情况,不过您可以在系统运行前执行一个检查 ...

所以意思是,只要设置配置出错,就一定是 license 过期吗?

Joestar.Xu 发表于 2024-7-15 17:26:11

您好,这里仅是一个思路供您参考,并不代表着出错了以后license为过期,正如我楼上所述,原生上没有接口可以判断license的注册情况。

innerwang 发表于 2024-7-16 14:00:36

Joestar.Xu 发表于 2024-7-15 17:26
您好,这里仅是一个思路供您参考,并不代表着出错了以后license为过期,正如我楼上所述,原生上没有接口可 ...

好的,了解了,谢谢。

那么,是否可以考虑提供一个这样的接口呢?
页: [1] 2
查看完整版本: 在线表格编辑器 license 过期问题