質問するログイン新規登録

質問編集履歴

1

2021/06/18 15:44

投稿

pon244
pon244

スコア59

title CHANGED
File without changes
body CHANGED
@@ -7,20 +7,51 @@
7
7
 
8
8
 
9
9
  ```ここに言語を入力
10
- function getTrends() {
11
- let service = getService();
12
- if (service.hasAccess()) {
13
- // id=1118370 を指定することで、東京のトレンドを取得
14
- let url = 'https://api.twitter.com/1.1/trends/place.json?id=1118370';
15
- let response = service.fetch(url, {
16
- method: 'get'
17
- });
18
- let result = JSON.parse(response.getContentText());
19
- let ss = SpreadsheetApp.getActiveSpreadsheet();
20
- let sheet = ss.getSheetByName("Trend2");
21
10
 
11
+ function getOAuthURL() {
12
+ Logger.log(getService().authorize());
13
+ }
14
+
15
+ // サービス取得
16
+ function getService() {
17
+ return OAuth1.createService('Twitter')
18
+ .setAccessTokenUrl('https://api.twitter.com/oauth/access_token')
19
+ .setRequestTokenUrl('https://api.twitter.com/oauth/request_token')
20
+ .setAuthorizationUrl('https://api.twitter.com/oauth/authorize')
21
+ // 設定した認証情報をセット
22
+ .setConsumerKey(PropertiesService.getScriptProperties().getProperty("CONSUMER_API_KEY"))
23
+ .setConsumerSecret(PropertiesService.getScriptProperties().getProperty("CONSUMER_API_SECRET"))
24
+ .setCallbackFunction('authCallback')
25
+ // 認証情報をロパティストアにセット(これにより認証解除するまで再認証が不要になる)
26
+ .setPropertyStore(PropertiesService.getUserProperties());
27
+
28
+ }
29
+
30
+ // 認証成功時に呼び出される処理を定義
31
+ function authCallback(request) {
32
+ var service = getService();
33
+ var authorized = service.handleCallback(request);
34
+ if (authorized) {
35
+ return HtmlService.createHtmlOutput('success!!');
36
+ } else {
37
+ return HtmlService.createHtmlOutput('failed');
38
+ }
39
+ }
40
+ // function getTrends() {
41
+ // let service = getService();
42
+ // if (service.hasAccess()) {
43
+ // // id=1118370 を指定することで、東京のトレンドを取得
44
+ // let url = 'https://api.twitter.com/1.1/trends/place.json?id=1118370';
45
+ // let response = service.fetch(url, {
46
+ // method: 'get'
47
+ // });
48
+ // let result = JSON.parse(response.getContentText());
49
+ // let ss = SpreadsheetApp.getActiveSpreadsheet();
22
- let val = sheet.getRange("A1:B50" ).setValue(result);
50
+ // let sheet = ss.getSheetByName("Trend2");
23
51
 
52
+ // let val = sheet.getRange("A1:B50" ).setValue(result);
53
+
24
54
 
25
- }}
55
+ // }}
56
+
26
57
  ```