Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Amplify山あり_谷あり奮闘記.pdf
Search
Sponsored
·
Ship Features Fearlessly
Turn features on and off without deploys. Used by thousands of Ruby developers.
→
j-yamamoto
July 31, 2020
Technology
8.2k
3
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Amplify山あり_谷あり奮闘記.pdf
j-yamamoto
July 31, 2020
Other Decks in Technology
See All in Technology
Oracle AI Database@AWS:サービス概要のご紹介
oracle4engineer
PRO
4
3k
2026年6月23日 Syncable Tech + Start Python Club にて
hamukazu
0
130
AIネイティブな開発のサプライチェーンリスク対策 〜激動の開発現場でリスクに立ち向かう〜【ZennFes】
cscengineer
PRO
2
130
AIAU_UMEMOGU_ninomiya_slide
ninomiya_ii
0
160
データサイエンスを価値につなげるプロジェクト設計 〜 DS一年目が現場で得た気づき 〜
ysd113
1
270
200個のGitHubリポジトリを横断調査したかった
icck
0
130
MCP Appsを作ってみよう
iwamot
PRO
4
680
AIはどのように 組織のアジリティを変えるのか?
junki
4
990
AI駆動開発を通して感じた、 AI時代のデザイナーの役割変化
whisaiyo
3
2.2k
When Platform Engineering Meets GenAI
sucitw
0
100
2026 TECHFRESH 畢業分享會 - 開發日常大解密!從領域驅動到企業級上線
line_developers_tw
PRO
0
1.2k
Bedrock AgentCore RuntimeでAuth0 Changelog調査AIをアップグレードした話
t5u8a5a
1
170
Featured
See All Featured
Why Your Marketing Sucks and What You Can Do About It - Sophie Logan
marketingsoph
0
170
Digital Ethics as a Driver of Design Innovation
axbom
PRO
1
310
Making Projects Easy
brettharned
120
6.7k
AI Search: Implications for SEO and How to Move Forward - #ShenzhenSEOConference
aleyda
1
1.3k
The Director’s Chair: Orchestrating AI for Truly Effective Learning
tmiket
1
200
How to make the Groovebox
asonas
2
2.2k
Data-driven link building: lessons from a $708K investment (BrightonSEO talk)
szymonslowik
1
1.1k
Test your architecture with Archunit
thirion
1
2.3k
Stop Working from a Prison Cell
hatefulcrawdad
274
21k
More Than Pixels: Becoming A User Experience Designer
marktimemedia
3
440
Un-Boring Meetings
codingconduct
0
320
Why Our Code Smells
bkeepers
PRO
340
58k
Transcript
"NQMJGZ ࢁ͋Γɺ୩͋Γฃಆه φΠϧגࣜձࣾ ࢁຊ४
• ࢯ໊ɿࢁຊ ४ • ॴଐɿ φΠϧגࣜձࣾ ϞϏϦςΟαʔϏεࣄۀ෦ • ΤϯδχΞྺɿ •
"84ར༻ྺɿ • ࠷ۙͷझຯɿ Ϛʔέλʔͷ࠺ʹ42-Λڭ͑Δ͜ͱ ࣗݾհ
• "84"NQMJGZಋೖʹࢸΔ·Ͱ • "84"NQMJGZΛಋೖͯ͠Έ࣮ͨମݧ • "84"NQMJGZಋೖΛݕ౼͍ͯ͠Δํ͚ͯ ͢͜ͱ
"84"NQMJGZ ಋೖʹࢸΔ·Ͱ
ΠϯϑϥߏͷมԽ ୈߏ ୈߏ 8IBU`T /FYU αʔόʔӡ༻ αʔόϨεԽ ୈߏ
๊͍͑ͯͨ՝ʢੜ࢈ੑʣ • ࣮ͷଐਓతͳϒϨ • ϦϦʔεͷखؒ • Ұͭͷ֬ೝڥͷऔΓ߹͍
๊͍͑ͯͨ՝ʢ࣭ʣ • ӡ༻ͷΦϖϛεݮ • ϦϦʔεޙͷোݮ
՝ղܾͷ伴 "84"NQMJGZ ୈߏ ୈߏ αʔόʔӡ༻ αʔόϨεԽ ୈߏ
ಋೖͯ͠ΈͯͲ͏ʁ
"NQMJGZ'SBNFXPSLͰαΫοͱόο ΫΤϯυϑϩϯτΤϯυ࣮ʂ import API from "@aws-amplify/api"; const awsconfig = require("./aws-exports").default;
API.configure(awsconfig); const runAPI = async () => { return await API.get('TestAPI', '/api/test', {}); }; "NQMJGZ'SBNFXPSLͷ"1*Ϟδϡʔϧ ΛϑϩϯτͰར༻͠ɺαΫοͱ"1*࣮ߦ $ amplify init $ amplify api update $ amplify push ίϚϯυͰ-BNCEBؔ࡞ˍσϓϩΠ var express = require('express') var bodyParser = require('body-parser') var awsServerlessExpressMiddleware = require('aws-serverless-express/middleware') // declare a new express app var app = express() app.use(bodyParser.json()) app.use(awsServerlessExpressMiddleware.eventContext()) // Enable CORS for all methods app.use(function(req, res, next) { res.header("Access-Control-Allow-Origin", "*") res.header("Access-Control-Allow-Headers", "Origin, X-Requested-With, Content-Type, Accept") next() }); /********************** * Example get method * **********************/ app.get('/api/test', function(req, res) { // Add your code here res.json({success: 'get call succeed!', url: req.url}); }); -BNCEB༻ͷ&YQSFTTϑϨʔϜϫʔΫͰ࣮
.VMUJ&OWػೳͰෳͷڥߏஙՄೳʂ ։ൃऀ" ։ൃऀ# ։ൃऀ$ .VMUJ&OWJSPONFOU
"NQMJGZ$POTPMFͰര$*$%ߏங ϒϥϯνߋ৽ͰσϓϩΠࣗಈԽʂ ຊ൪ "NQMJGZ$POTPMF $*$% 1VTINBTUFSCSBODI 1VTITUBHJOHCSBODI εςʔδϯά "NQMJGZ$POTPMF $*$%
ੜ࢈ੑͷ՝શͯղܾʂ ü ࣮ͷଐਓతͳϒϨ ü ϦϦʔεͷखؒ ü Ұͭͷ֬ೝڥͷऔΓ߹͍ —"--(3&&/—
࣭՝গ͠վળʂ ü ӡ༻ͷΦϖϛεݮ "NQMJGZ$POTPMFͷ(JUIVC࿈ܞʹΑΓϦϦʔεΦϖϨʔγϣϯ͕ҰݩԽɻ • ϦϦʔεޙͷোݮ ˞$ZQSFTTͰ&&ςετಋೖݕ౼͢Δɺ "NQMJGZ$POTPMFͷσϓϩΠ࣌ؒͷ߹ͰҰ୴தࢭɻ ରࡦݕ౼தɻɻɻ
"84"NQMJGZ ΊͬͪΌ͑͑ࣄ͠·͢Μʂ
Ͱۤ͋Γ·ͨ͠ɻɻɻ
·ͬͨϙΠϯτᶃ ڥผͷύϥϝʔλ͠ʹۤઓ "84"NQMJGZ όοΫΤϯυ ύϥϝʔλ ɾଞ"84Ϧιʔεͷ"3/ ɾ"1*ͷೝূΩʔ FUD ຊ൪ εςʔδϯά
։ൃ "84"NQMJGZ όοΫΤϯυ "84"NQMJGZ όοΫΤϯυ
UFBNQSPWJEFSJOGPKTPO ͜ͷϑΝΠϧʹڥผύϥϝʔλՃ "NQMJGZ$POTPMFͰ ಈ͔ͳ͍ʂʁ (JUIVCʹίϛοτ ඞཁʂʁ ·ͬͨϙΠϯτᶃ ڥผͷύϥϝʔλ͠ʹۤઓ
·ͬͨϙΠϯτᶃ 1BSBNFUFS4UPSFͰղܾʂ ຊ൪ εςʔδϯά ։ൃ 1BSBNFUFS 4UPSF "84"NQMJGZ όοΫΤϯυ "84"NQMJGZ
όοΫΤϯυ "84"NQMJGZ όοΫΤϯυ ᶃύϥϝʔλΛొ ᶄσϓϩΠ࣌ʹ ύϥϝʔλऔಘ
·ͬͨϙΠϯτᶄ ผܥ౷ͷ4όέοτͷར༻ʹۤઓ DBSNPKQ ը૾༻ 4όέοτ ϗεςΟϯά༻ 4όέοτ ը૾ߋ৽ όονॲཧ DBSNPKQ
ը૾༻ 4όέοτ ϗεςΟϯά༻ 4όέοτ ը૾ߋ৽ όονॲཧ ඥ͚ෆՄ چߏ ༧ఆ͍ͯͨ͠ߏ
·ͬͨϙΠϯτᶄ $MPVE'SPOUΛઌ಄ʹՃͰճආ DBSNPKQ ը૾༻ 4όέοτ ϗεςΟϯά༻ 4όέοτ ը૾ߋ৽ όονॲཧ ը૾༻
4όέοτ ϗεςΟϯά༻ 4όέοτ ը૾ߋ৽ όονॲཧ DBSNPKQ ඥ͚Մೳ چߏ ৽ߏ
͜ΕΛ͓͍͑ͯͯʂ ಋೖɾӡ༻ͷϙΠϯτ
ಋೖɾӡ༻ϙΠϯτᶃ దͳͱ͜ΖͰ"NQMJGZΛར༻ ߴػೳͰ֦ுੑͷߴ͍ όοΫΤϯυͷߏங͕؆୯ "NQMJGZͰશͯߏங/( ˠංେԽʹΑΔอकੑͷԼ
ಋೖɾӡ༻ϙΠϯτᶃ దͳͱ͜ΖͰ"NQMJGZΛར༻ ϞόΠϧɾ ϑϩϯτΤϯυ αʔϏε αʔϏε ϞόΠϧɾϑϩϯτΤϯυ։ൃ ˠ"84"NQMJGZ ͦͷଞͷ։ൃ ˠ$MPVE'PSNBUJPOɺ"84
$%, "84"NQMJGZͷత ϞόΠϧɺϑϩϯτΤϯυ ͷ։ൃޮΛߴΊΔ $%/
ಋೖɾӡ༻ϙΠϯτᶄ $MPVE'PSNBUJPOͷجૅΛֶΜͰ͓͘ $MPVE'PSNBUJPO "84"NQMJGZͷ جૅ$MPVE'PSNBUJPO "NQMJGZΛར༻͍ͯ͠Δͱʜ ɾόοΫΤϯυ։ൃͷτϥϒϧγϡʔςΟϯά ɾσϑΥϧτͷػೳʹύϥϝʔλͳͲઃఆՃ ˠ$MPVE'PSNBUJPOͷجૅΛ ͓ͬͯ͘ͱӡ༻ָ͕
ಋೖɾӡ༻ϙΠϯτᶅ "84"NQMJGZͷखް͍αϙʔτΛར༻ (JUIVCͰΦʔϓϯʹ *TTVFཧ͕͞Ε͍ͯΔ "84αϙʔτ׆༻
None
͝ਗ਼ௌ ͋Γ͕ͱ͏ ͍͟͝·ͨ͠ ΤϯδχΞɾͦͷଞ৬छେืूதʂ