Changes for page 2 Script

Last modified by Devin Chen on 2026/03/10 10:53

From version 12.4
edited by Devin Chen
on 2026/03/05 14:29
Change comment: There is no comment for this version
To version 12.1
edited by Devin Chen
on 2026/03/05 13:35
Change comment: There is no comment for this version

Summary

Details

Page properties
Content
... ... @@ -1931,80 +1931,7 @@
1931 1931  1.1 Create a table file based on actual needs and fill in the headers.
1932 1932  
1933 1933  (% style="text-align:center" %)
1934 -[[image:WeCom Screenshot_20260305114836.png]]
1934 +[[image:WeCom Screenshot_20260305114836.png||height="845" width="1335"]]
1935 1935  
1936 1936  1.2 Modify the access permissions of the table to 'Anyone on the internet with the link can edit'.
1937 -
1938 -(% style="text-align:center" %)
1939 -[[image:z6rgXmeOMz1.png]]
1940 -
1941 -1.3 Enable the Apps Script extension feature for the sheet.
1942 -
1943 -(% style="text-align:center" %)
1944 -[[image:u8QbgKcOgA.png]]
1945 -
1946 -1.4 On the Apps Script editing page, program according to actual needs.
1947 -
1948 -Google Apps Script Demo
1949 -
1950 -{{code language="none"}}
1951 -/**
1952 - * Handles POST requests: parses JSON data, writes it to the sheet with timestamp
1953 - * Expected JSON format: {
1954 - * sheetName: "Sheet1" (optional, defaults to "Sheet1"),
1955 - * integerNumber: 123,
1956 - * floatingNumber: 45.67,
1957 - * stringData: "example text"
1958 - * }
1959 - */
1960 -function doPost(e) {
1961 - // 1. Parse the JSON data from the request body
1962 - var data;
1963 - try {
1964 - data = JSON.parse(e.postData.contents);
1965 - } catch (error) {
1966 - return ContentService.createTextOutput('Error: Invalid JSON data');
1967 - }
1968 -
1969 - // 2. Get the target sheet (defaults to "Sheet1")
1970 - var sheetName = data.sheetName || 'Sheet1';
1971 - var sheet = SpreadsheetApp.getActiveSpreadsheet().getSheetByName(sheetName);
1972 - if (!sheet) {
1973 - return ContentService.createTextOutput('Error: Specified sheet not found');
1974 - }
1975 -
1976 - // 3. Verify required fields are present
1977 - if (data.integerNumber === undefined ||
1978 - data.floatingNumber === undefined ||
1979 - data.stringData === undefined) {
1980 - return ContentService.createTextOutput('Error: Missing required fields (integerNumber, floatingNumber, stringData)');
1981 - }
1982 -
1983 - // 4. Generate formatted current timestamp (first column)
1984 - var now = new Date();
1985 - var timeZone = SpreadsheetApp.getActiveSpreadsheet().getSpreadsheetTimeZone();
1986 - var formattedTimestamp = Utilities.formatDate(now, timeZone, "yyyy-MM-dd HH:mm:ss");
1987 -
1988 - // 5. Extract data from JSON
1989 - var integerNumber = data.integerNumber;
1990 - var floatingNumber = data.floatingNumber;
1991 - var stringData = data.stringData;
1992 -
1993 - // 6. Append the data to the sheet with proper column mapping:
1994 - // Column A: Time (timestamp)
1995 - // Column B: Integer number
1996 - // Column C: Floating number
1997 - // Column D: String data
1998 - sheet.appendRow([formattedTimestamp, integerNumber, floatingNumber, stringData]);
1999 -
2000 - // 7. Return success response
2001 - return ContentService.createTextOutput('Success: Data written to Google Sheets');
2002 -}
2003 -
2004 -/**
2005 - * Handles GET requests (optional, for testing)
2006 - */
2007 -function doGet(e) {
2008 - return ContentService.createTextOutput('This endpoint accepts POST requests only. Please use POST with JSON data.');
2009 -}
2010 -{{/code}}
1937 +
WeCom Screenshot_20260305114836.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.DevinChen
Size
... ... @@ -1,1 +1,0 @@
1 -53.5 KB
Content
u8QbgKcOgA.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.DevinChen
Size
... ... @@ -1,1 +1,0 @@
1 -61.3 KB
Content
z6rgXmeOMz.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.DevinChen
Size
... ... @@ -1,1 +1,0 @@
1 -80.7 KB
Content
z6rgXmeOMz1.png
Author
... ... @@ -1,1 +1,0 @@
1 -XWiki.DevinChen
Size
... ... @@ -1,1 +1,0 @@
1 -80.7 KB
Content