นี่คือห้องสมุด Kraken.io PHP อย่างเป็นทางการซึ่งจะช่วยให้ผู้ใช้รวมการเพิ่มประสิทธิภาพภาพของเราเข้ากับโครงการ PHP ได้อย่างรวดเร็ว kraken.io image optimizer
หากคุณใช้นักแต่งเพลงคุณสามารถเพิ่มการพึ่งพา kraken-io/kraken-php ลงในไฟล์ composer.json ของโครงการ Json นี่คือตัวอย่างของการพึ่งพาในเวอร์ชัน 1.2:
{
"require" : {
"kraken-io/kraken-php" : " ^1.2 "
}
}หรือคุณสามารถดำเนินการคำสั่งต่อไปนี้ในไดเรกทอรีรากของโครงการของคุณ:
composer require kraken-io/kraken-php
หากคุณมี GIT แล้ววิธีที่ง่ายที่สุดในการดาวน์โหลดไลบรารี Kraken-PHP คือคำสั่ง GIT:
git clone git://github.com/kraken-io/kraken-php.git /path/to/include/kraken
หรือคุณสามารถดาวน์โหลดไฟล์ PHP จาก GitHub และวางไว้ในโครงการ PHP ของคุณ:
https://github.com/kraken-io/kraken-php/archive/master.zip
ก่อนอื่นคุณต้องลงทะเบียนสำหรับ Kraken.io API และรับ API Key และ API Secret ที่เป็นเอกลักษณ์ของคุณ คุณจะพบทั้งสองภายใต้ข้อมูลรับรอง API เมื่อคุณตั้งค่าบัญชีแล้วคุณสามารถเริ่มใช้ Kraken.io API ในแอปพลิเคชันของคุณ
โปรดจำไว้ว่า - อย่าเชื่อมโยงไปยังรูปภาพที่ได้รับการปรับปรุงให้ดาวน์โหลด คุณต้องดาวน์โหลดก่อนแล้วแทนที่พวกเขาในเว็บไซต์หรือแอปพลิเคชันของคุณ เนื่องจากเหตุผลด้านความปลอดภัยที่ได้รับการปรับปรุงให้เหมาะสมบนเซิร์ฟเวอร์ของเรา เป็นเวลาหนึ่งชั่วโมง เท่านั้น
คุณสามารถเพิ่มประสิทธิภาพรูปภาพของคุณได้สองวิธี - โดยการให้ URL ของภาพที่คุณต้องการเพิ่มประสิทธิภาพหรืออัพโหลดไฟล์รูปภาพโดยตรงไปยัง Kraken.io API
ตัวเลือกแรก (รูปภาพ URL) เหมาะสำหรับรูปภาพที่มีอยู่แล้วในการผลิตหรือสถานที่อื่น ๆ บนอินเทอร์เน็ต อันที่สอง (การอัปโหลดโดยตรง) เหมาะสำหรับกระบวนการปรับใช้ของคุณสร้างสคริปต์หรือการประมวลผลแบบ on-the-fly ของการอัปโหลดของผู้ใช้ของคุณซึ่งคุณยังไม่มีภาพออนไลน์
Kraken.io ให้สองตัวเลือกสำหรับการดึงผลลัพธ์การเพิ่มประสิทธิภาพ ด้วยตัวเลือก wait การตั้งค่าผลลัพธ์จะถูกส่งกลับทันทีในการตอบกลับ ด้วยตัวเลือก callback_url ตั้งค่าผลลัพธ์จะถูกโพสต์ไปยัง URL ที่ระบุในคำขอของคุณ
เมื่อเปิดตัวเลือก wait สำหรับทุกคำขอของ API การเชื่อมต่อจะถูกเปิดไว้จนกว่าภาพจะได้รับการปรับให้เหมาะสม เมื่อทำสิ่งนี้เสร็จแล้วคุณจะได้รับการตอบกลับทันทีด้วยวัตถุ JSON ที่มีผลลัพธ์การเพิ่มประสิทธิภาพของคุณ หากต้องการใช้ตัวเลือกนี้เพียงแค่ตั้งค่า "wait": true ในคำขอของคุณ
ขอ:
{
"auth" : {
"api_key" : "your-api-key" ,
"api_secret" : "your-api-secret"
} ,
"url" : "http://image-url.com/file.jpg" ,
"wait" : true
}การตอบสนอง
{
"success" : true ,
"file_name" : "file.jpg" ,
"original_size" : 324520 ,
"kraked_size" : 165358 ,
"saved_bytes" : 159162 ,
"kraked_url" : "http://dl.kraken.io/d1aacd2a2280c2ffc7b4906a09f78f46/file.jpg"
} ด้วย URL การโทรกลับการเชื่อมต่อ HTTPS จะถูกยกเลิกทันทีและ id ที่ไม่ซ้ำกันจะถูกส่งกลับในร่างกายการตอบสนอง หลังจากการเพิ่มประสิทธิภาพมากกว่า kraken.io จะโพสต์ข้อความไปยัง callback_url ที่ระบุในคำขอของคุณ ID ในการตอบกลับจะสะท้อนถึง ID ในผลลัพธ์ที่โพสต์ไปยัง URL การโทรกลับของคุณ
เราขอแนะนำ requestbin เป็นวิธีที่ง่ายในการจับภาพการเพิ่มประสิทธิภาพสำหรับการทดสอบเริ่มต้น
ขอ:
{
"auth" : {
"api_key" : "your-api-key" ,
"api_secret" : "your-api-secret"
} ,
"url" : "http://image-url.com/file.jpg" ,
"callback_url" : "http://awesome-website.com/kraken_results"
}การตอบสนอง:
{
"id" : "18fede37617a787649c3f60b9f1f280d"
}ผลลัพธ์ที่โพสต์ไปยัง URL การโทรกลับ:
{
"id" : "18fede37617a787649c3f60b9f1f280d"
"success" : true ,
"file_name" : "file.jpg" ,
"original_size" : 324520 ,
"kraked_size" : 165358 ,
"saved_bytes" : 159162 ,
"kraked_url" : "http://dl.kraken.io/18fede37617a787649c3f60b9f1f280d/file.jpg"
} ขั้นตอนแรกคือการรับรองความถูกต้องของ Kraken.io API โดยให้คีย์ API ที่ไม่ซ้ำกันและ API Secret ในขณะที่สร้างอินสแตนซ์ Kraken.io ใหม่:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " ); เพื่อเพิ่มประสิทธิภาพภาพโดยการให้ URL รูปภาพให้ใช้วิธี kraken.url() คุณจะต้องจัดเตรียมพารามิเตอร์บังคับสองตัวในอาร์เรย์ - url ไปยังรูปภาพและ wait หรือเรียกกลับหรือ callback_url :
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" url " => " http://url-to-image.com/file.jpg " ,
" wait " => true
);
$ data = $ kraken -> url ( $ params ); ขึ้นอยู่กับตัวเลือกการตอบกลับที่เลือก (URL รอหรือโทรกลับ) ในอาร์เรย์ data คุณจะพบ ID การเพิ่มประสิทธิภาพหรือผลลัพธ์การเพิ่มประสิทธิภาพที่มีคุณสมบัติที่ success ชื่อไฟล์ขนาดไฟล์ต้นฉบับขนาดไฟล์ kraking จำนวนการออมและ URL รูปภาพที่ดีที่สุด:
array ( 6 ) {
' success ' =>
bool(true)
' file_name ' =>
string( 8 ) " file.jpg "
' original_size ' =>
int( 62422 )
' kraked_size ' =>
int( 52783 )
' saved_bytes ' =>
int( 9639 )
' kraked_url ' =>
string( 65 ) " http://dl.kraken.io/d1aacd2a2280c2ffc7b4906a09f78f46/file.jpg "
} หากคุณต้องการอัปโหลดรูปภาพของคุณโดยตรงไปยัง kraken.io api ใช้วิธี kraken->upload() คุณจะต้องจัดเตรียมพารามิเตอร์ที่จำเป็นสองพารามิเตอร์ใน file อาร์เรย์ - ซึ่งเป็นพา ธ ที่แน่นอนไปยังไฟล์และ wait หรือ callback_url
ในอาร์เรย์ $data คุณจะพบคุณสมบัติการเพิ่มประสิทธิภาพเช่นเดียวกับตัวเลือก url ด้านบน
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true
);
$ data = $ kraken -> upload ( $ params );เมื่อคุณตัดสินใจที่จะเสียสละคุณภาพของภาพเพียงเล็กน้อย (โดยปกติจะไม่สามารถสังเกตเห็นได้ต่อสายตามนุษย์) คุณจะสามารถประหยัดน้ำหนักไฟล์เริ่มต้นได้มากถึง 90% การเพิ่มประสิทธิภาพที่สูญเสียจะให้ผลลัพธ์ที่โดดเด่นด้วยการสูญเสียคุณภาพของภาพเพียงเล็กน้อย
หากต้องการใช้การเพิ่มประสิทธิภาพที่สูญเสียเพียงแค่ตั้งค่า "lossy" => true ในคำขอของคุณ:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" lossy " => true
);
$ data = $ kraken -> upload ( $ params );ภาพ PNG จะถูกแปลงจาก 24 บิตเป็น paletted 8 บิตพร้อมช่องอัลฟ่าเต็ม กระบวนการนี้เรียกว่าการหาปริมาณ PNG ในรูปแบบ RGBA และหมายถึงปริมาณของสีที่ใช้ในภาพจะลดลงเป็น 256 ในขณะที่เก็บข้อมูลทั้งหมดเกี่ยวกับความโปร่งใสของอัลฟา
สำหรับการเพิ่มประสิทธิภาพ JPEG ที่สูญหาย Kraken.io จะสร้างสำเนาหลายภาพของภาพอินพุตที่มีการตั้งค่าคุณภาพที่แตกต่างกัน จากนั้นจะเลือกอย่างชาญฉลาดด้วยคุณภาพที่ดีที่สุดในการจัดปันส่วน สิ่งนี้ทำให้มั่นใจได้ว่าภาพ JPEG ของคุณจะมีขนาดเล็กที่สุดที่มีคุณภาพสูงสุดเท่าที่จะเป็นไปได้โดยไม่จำเป็นต้องให้มนุษย์เลือกภาพที่ดีที่สุด
ตัวเลือกการปรับขนาดภาพนั้นยอดเยี่ยมสำหรับการสร้างภาพขนาดย่อหรือภาพตัวอย่างในแอปพลิเคชันของคุณ Kraken.io จะปรับขนาดภาพที่กำหนดก่อนจากนั้นปรับให้เหมาะสมด้วยอัลกอริทึมการเพิ่มประสิทธิภาพที่หลากหลาย ตัวเลือก resize ต้องการพารามิเตอร์สองสามตัวที่จะส่งผ่านเช่น width ที่ต้องการและ/หรือ height และคุณสมบัติ strategy บังคับ ตัวอย่างเช่น:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" resize " => array (
" width " => 100 ,
" height " => 75 ,
" strategy " => " crop "
)
);
$ data = $ kraken -> upload ( $ params ); คุณสมบัติ strategy สามารถมีหนึ่งในค่าต่อไปนี้:
exact - ปรับขนาดโดยความกว้าง/ความสูงที่แน่นอน จะไม่มีการรักษาอัตราส่วนภาพportrait - ความกว้างที่แน่นอนจะถูกตั้งค่าความสูงจะถูกปรับตามอัตราส่วนภาพlandscape - ความสูงที่แน่นอนจะถูกตั้งค่าความกว้างจะถูกปรับตามอัตราส่วนภาพauto - กลยุทธ์ที่ดีที่สุด (แนวตั้งหรือภูมิทัศน์) จะถูกเลือกสำหรับภาพที่กำหนดตามอัตราส่วนภาพfit - ตัวเลือกนี้จะครอบตัดและปรับขนาดภาพของคุณให้พอดีกับความกว้างและความสูงที่ต้องการsquare - กลยุทธ์นี้จะครอบตัดภาพก่อนโดยมิติที่สั้นกว่าเพื่อให้เป็นสแควร์จากนั้นปรับขนาดให้เป็นขนาดที่ระบุcrop - ตัวเลือกนี้จะครอบตัดภาพของคุณเป็นขนาดที่แน่นอนที่คุณระบุโดยไม่มีการบิดเบือนfill - กลยุทธ์นี้ช่วยให้คุณปรับขนาดภาพให้พอดีกับขอบเขตที่ระบุในขณะที่รักษาอัตราส่วนภาพ (เช่นกลยุทธ์อัตโนมัติ) คุณสมบัติพื้นหลังที่เป็นตัวเลือกช่วยให้คุณสามารถระบุสีที่จะใช้ในการเติมส่วนที่ไม่ได้ใช้ของขอบเขตที่ระบุไว้ก่อนหน้านี้ คุณสมบัติพื้นหลังสามารถจัดรูปแบบในรูปแบบ Hex #f60 หรือ #ff6600 , RGB rgb(255, 0, 0) หรือ RGBA rgba(91, 126, 156, 0.7) สีพื้นหลังเริ่มต้นเป็นสีขาวข้อมูลเพิ่มเติมเกี่ยวกับการปรับขนาดภาพและการปลูกพืชสามารถพบได้ในการอ้างอิง Kraken.io API
WebP เป็นรูปแบบภาพใหม่ที่ Google แนะนำในปี 2010 ซึ่งรองรับการบีบอัดทั้งการสูญเสียและการสูญเสีย จากข้อมูลของ Google ภาพ WebP Lossless มีขนาด เล็กลง 26% เมื่อเทียบกับ PNGS และภาพที่สูญเสียไปของ WebP มีขนาด เล็กกว่า 25-34% เมื่อเทียบกับภาพ JPEG
ในการปรับปรุงไฟล์ PNG หรือ JPEG ของคุณลงในรูปแบบ WebP เพียงตั้งค่า "webp": true ในคำขอ JSON ของคุณ นอกจากนี้คุณยังสามารถเลือก "lossy": true เพื่อใช้ประโยชน์จากการบีบอัดที่สูญเสียของ Webp:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" webp " => true ,
" lossy " => true
);
$ data = $ kraken -> upload ( $ params );Kraken.io API ช่วยให้คุณสามารถแปลงภาพที่แตกต่างจากประเภท/รูปแบบหนึ่งไปอีกรูปแบบหนึ่งได้อย่างง่ายดาย ตัวอย่างเช่นหากคุณต้องการเปลี่ยนไฟล์ PNG ที่โปร่งใสให้เป็น JPEG ที่มีพื้นหลังสีเทา kraken.io API ที่คุณครอบคลุม
ในการแปลงระหว่างประเภทภาพที่แตกต่างกันคุณต้องเพิ่มวัตถุ convert พิเศษให้คุณขอ JSON วัตถุนี้ใช้เวลาสามคุณสมบัติ:
format ที่คุณระบุประเภทไฟล์ที่คุณต้องการให้ภาพของคุณแปลงเป็นbackground เสริมที่คุณสามารถระบุสีพื้นหลังเมื่อแปลงจากรูปแบบไฟล์โปร่งใสเช่น PNG และ GIF เป็นรูปแบบทึบแสงอย่างสมบูรณ์เช่น JPEGkeep_extension ที่เป็นตัวเลือกซึ่งช่วยให้คุณสามารถรักษาส่วนขยายไฟล์ดั้งเดิมไว้ไม่ได้โดยไม่คำนึงถึงรูปแบบภาพเอาต์พุตพารามิเตอร์บังคับ:
format - รูปแบบรูปภาพที่คุณต้องการแปลงภาพของคุณเป็น สิ่งนี้สามารถยอมรับหนึ่งในค่าต่อไปนี้: jpeg , png หรือ gifพารามิเตอร์เสริม:
background - ภาพพื้นหลังเมื่อแปลงจากรูปแบบไฟล์โปร่งใสเช่น PNG หรือ GIF เป็นรูปแบบทึบแสงอย่างสมบูรณ์เช่น JPEG คุณสมบัติพื้นหลังสามารถส่งผ่านในรูปแบบ Hex "#f60" หรือ "#ff6600" , RGB "rgb(255, 0, 0)" หรือ RGBA "rgba(91, 126, 156, 0.7)" สีพื้นหลังเริ่มต้นเป็นสีขาวkeep_extension - ค่าบูลีน ( true หรือ false ) แนะนำ kraken.io api ไม่ว่าจะเป็นส่วนขยายเดิมหรือไม่ควรเก็บไว้ในชื่อไฟล์เอาต์พุต ตัวอย่างเช่นเมื่อแปลง "image.jpg" เป็นรูปแบบ PNG ด้วยการตั้งค่าสถานะนี้จะเปิดชื่อภาพเอาต์พุตจะยังคงเป็น "image.jpg" แม้ว่าภาพจะถูกแปลงเป็น PNG ค่าเริ่มต้นเป็น false หมายถึงส่วนขยายที่ถูกต้องจะถูกตั้งค่าเสมอ โดยค่าเริ่มต้น Kraken.io API จะ ตัดข้อมูลเมตาทั้งหมดที่พบในภาพ เพื่อให้ไฟล์ภาพมีขนาดเล็กที่สุดเท่าที่จะเป็นไปได้และในโหมดการสูญเสียและการสูญเสียทั้งสองอย่าง รายการเช่นแท็ก EXIF, XMP และ IPTC, ข้อมูลโปรไฟล์สี ฯลฯ จะถูกถอดออกโดยสิ้นเชิง
อย่างไรก็ตามมีสถานการณ์ที่คุณอาจต้องการเก็บข้อมูลเมตาบางส่วนที่มีอยู่ในภาพตัวอย่างเช่นประกาศลิขสิทธิ์หรือ Geotags เพื่อที่จะรักษารายการเมตาที่สำคัญที่สุดให้เพิ่มอาร์เรย์ preserve_meta เพิ่มเติมในคำขอของคุณด้วยค่าต่อไปนี้อย่างน้อยหนึ่งค่า:
{
"preserve_meta" : [ "date" , "copyright" , "geotag" , "orientation" , "profile" ]
}profile - จะรักษาโปรไฟล์สี ICC ข้อมูลโปรไฟล์สีของ ICC เพิ่มการขยายตัวที่ไม่จำเป็นให้กับรูปภาพ อย่างไรก็ตามการรักษาอาจจำเป็นใน กรณีที่หายากมาก ซึ่งการลบข้อมูลนี้อาจนำไปสู่การเปลี่ยนแปลงความสว่างและ/หรือความอิ่มตัวของไฟล์ที่เกิดขึ้นdate - จะรักษาวันที่สร้างภาพcopyright - จะรักษารายการลิขสิทธิ์geotag - จะเก็บรักษาข้อมูลเฉพาะตำแหน่งorientation - จะรักษาเครื่องหมายการปฐมนิเทศ (การหมุน)ตัวอย่างการรวม:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" preserve_meta " => array ( " profile " , " geotag " )
);
$ data = $ kraken -> upload ( $ params );Kraken.io API ช่วยให้คุณสามารถจัดเก็บภาพที่ดีที่สุดได้โดยตรงในถัง S3, คอนเทนเนอร์ไฟล์คลาวด์, คอนเทนเนอร์ Azure หรือคอนเทนเนอร์วัตถุ Softlayer ด้วยพารามิเตอร์เพิ่มเติมเพียงไม่กี่ภาพภาพที่ดีที่สุดของคุณจะถูกส่งไปยังที่เก็บข้อมูลภายนอกของคุณในเวลาไม่นาน
พารามิเตอร์บังคับ:
key - Amazon "Access Key ID" ที่ไม่ซ้ำกันของคุณsecret - Amazon "Secret Access Key" ที่เป็นเอกลักษณ์ของคุณbucket - ชื่อของคอนเทนเนอร์ปลายทางในบัญชี Amazon S3 ของคุณregion -ชื่อของภูมิภาคถัง S3 ของคุณตั้งอยู่ในฟิลด์นี้มีข้อบังคับหากภูมิภาคแตกต่างจากค่าเริ่มต้น ( us-east-1 ) รายการทั้งหมดของภูมิภาค S3 สามารถพบได้ที่นี่พารามิเตอร์เสริม:
path - เส้นทางปลายทางในถัง S3 ของคุณ (เช่น "images/layout/header.jpg" ) ค่าเริ่มต้นเป็นรูท "/"acl - การอนุญาตของวัตถุปลายทาง นี่อาจเป็น "public_read" หรือ "private" ค่าเริ่มต้นเป็น "public_read" พารามิเตอร์ข้างต้นจะต้องส่งผ่านในคีย์ s3_store :
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" s3_store " => array (
" key " => " your-amazon-access-key " ,
" secret " => " your-amazon-secret-key " ,
" bucket " => " destination-bucket "
)
);
$ data = $ kraken -> upload ( $ params ); อาร์เรย์ $data จะมีคีย์ kraked_url ชี้ไปที่ไฟล์ที่ปรับให้เหมาะสมในบัญชี Amazon S3 ของคุณโดยตรง:
" kraked_url " => "http: //s3.amazonaws.com/YOUR_CONTAINER/path/to/file.jpg"พารามิเตอร์บังคับ:
user - ชื่อผู้ใช้ RackSpace ของคุณkey - คีย์ API ไฟล์คลาวด์ที่ไม่ซ้ำกันของคุณcontainer - ชื่อของคอนเทนเนอร์ปลายทางในบัญชีไฟล์คลาวด์ของคุณพารามิเตอร์เสริม:
path - เส้นทางปลายทางในคอนเทนเนอร์ของคุณ (เช่น "images/layout/header.jpg" ) ค่าเริ่มต้นเป็นรูท "/"ssl - ค่าบูลีน ( true หรือ false ) แนะนำ kraken.io api เพื่อดึง URL SSL หรือไม่ใช่ SSL จาก Rackspace CloudFiles ค่าเริ่มต้นเป็น false หมายถึง URL ที่ไม่ใช่ SSL จะถูกส่งคืน พารามิเตอร์ข้างต้นจะต้องส่งผ่านในคีย์ cf_store :
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" cf_store " => array (
" user " => " your-rackspace-username " ,
" key " => " your-rackspace-api-key " ,
" container " => " destination-container " ,
" ssl " => true
)
);
$ data = $ kraken -> upload ( $ params ); หากคอนเทนเนอร์ของคุณเปิดใช้งาน CDN ผลลัพธ์การปรับให้เหมาะสมจะมี kraked_url ซึ่งชี้ไปที่ตำแหน่งไฟล์ที่เหมาะสมในบัญชีไฟล์คลาวด์ของคุณโดยตรงเช่น:
kraked_url => "http: //e9ffc04970a269a54eeb-cc00fdd2d4f11dffd931005c9e8de53a.r2.cf1.rackcdn.com/path/to/file.jpg" หากคอนเทนเนอร์ของคุณไม่ได้เปิดใช้งานไฟล์ที่ดีที่สุด CDN จะถูกเก็บไว้ในบัญชี CloudFiles ของคุณ แต่ kraked_url จะชี้ไปที่ URL Image ที่เหมาะสมที่สุดในที่เก็บข้อมูล Kraken.io API:
kraked_url => "http: //dl.kraken.io/ecdfa5c55d5668b1b5fe9e420554c4ee/file.jpg"พารามิเตอร์บังคับ:
account - บัญชี Azure Storage ของคุณkey - คีย์การเข้าถึง Azure Storage ที่ไม่ซ้ำกันของคุณcontainer - ชื่อของคอนเทนเนอร์ปลายทางในบัญชี Azure ของคุณพารามิเตอร์เสริม:
path - เส้นทางปลายทางในคอนเทนเนอร์ของคุณ (เช่น "images/layout/header.jpg" ) ค่าเริ่มต้นเป็นรูท "/" พารามิเตอร์ข้างต้นจะต้องส่งผ่านในคีย์ azure_store :
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" azure_store " => array (
" account " => " your-azure-account " ,
" key " => " your-azure-storage-access-key " ,
" container " => " destination-container "
)
);
$ data = $ kraken -> upload ( $ params );พารามิเตอร์บังคับ:
user - ชื่อผู้ใช้ softlayer ของคุณkey - คีย์ Softlayer API ของคุณcontainer - ชื่อคอนเทนเนอร์ปลายทางในบัญชี Softlayer ของคุณregion - ชื่อสั้น ๆ ของภูมิภาคคอนเทนเนอร์ของคุณตั้งอยู่นี่อาจเป็นหนึ่งในดังต่อไปนี้: syd01 lon02 mon01 dal05 tok02 tor01 hkg02 mex01 par01 fra02 mil01 sjc01 sng01 mel01 ams01พารามิเตอร์เสริม:
path - เส้นทางปลายทางในคอนเทนเนอร์ของคุณ (เช่น "รูปภาพ/layout/head.jpg") ค่าเริ่มต้นเป็นรูท "/"cdn_url - ค่าบูลีน true หรือ false แนะนำ kraken.io API เพื่อส่งคืน URL CDN สาธารณะของไฟล์ที่ปรับให้เหมาะสมของคุณ ค่าเริ่มต้นเป็น false หมายถึง URL ที่ไม่ใช่ CDN จะถูกส่งคืน พารามิเตอร์ข้างต้นจะต้องส่งผ่านในวัตถุ sl_store :
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
// Minimal request, providing only the mandatory parameters */
$ params = array (
" file " => " /path/to/image/file.jpg " ,
" wait " => true ,
" sl_store " => array (
" user " => " your-softlayer-account " ,
" key " => " your-softlayer-key " ,
" container " => " destination-container " ,
" region " => " your-container-location "
)
);
$ data = $ kraken -> upload ( $ params ); ด้านล่างคุณสามารถค้นหาตัวอย่างของคำขอ JSON ที่สมบูรณ์ที่ใช้ sl_store เพื่อผลักดันภาพที่ดีที่สุดลงในคอนเทนเนอร์ที่เก็บอ็อบเจ็กต์ SoftLayer ของคุณ เราจะใช้ตัวเลือก URL เพื่อป้อน API ด้วย URL ของภาพที่จะได้รับการปรับให้เหมาะสม:
<?php
require_once ( " Kraken.php " );
$ kraken = new Kraken ( " your-api-key " , " your-api-secret " );
$ params = array (
" url " => " http://awesome-website.com/images/header.jpg " ,
" wait " => true ,
" sl_store " => array (
" user " => " your-softlayer-account " ,
" key " => " your-softlayer-key " ,
" container " => " destination-container " ,
" region " => " your-container-location " ,
" cdn_url " => true ,
" path " => " images/layout/header.jpg "
)
);
$ data = $ kraken -> upload ( $ params ); หากคอนเทนเนอร์ softlayer ของคุณเปิดใช้งาน CDN และคุณผ่าน "cdn_url": true ในการร้องขอ JSON ของคุณผลลัพธ์การเพิ่มประสิทธิภาพจะมี kraked_url ซึ่งชี้ไปที่ตำแหน่งไฟล์ที่ดีที่สุดใน Softlayer CDN ของคุณ
kraked_url => "http: //1c231.http.fra02.cdn.softlayer.net/images/layout/header.jpg" หากคอนเทนเนอร์ของคุณไม่ได้เปิดใช้งาน kraked_url จะชี้ไปที่ URL ภาพที่ดีที่สุดใน Kraken.io API:
kraked_url => "http: //dl.kraken.io/api/ecdfa5c55d5668b1b5fe9e420554c4ee/header.jpg" ลิขสิทธิ์ (c) 2013 - 2015 Nekkra UG
ได้รับอนุญาตโดยไม่ต้องเสียค่าใช้จ่ายสำหรับบุคคลใด ๆ ที่ได้รับสำเนาซอฟต์แวร์นี้และไฟล์เอกสารที่เกี่ยวข้อง ("ซอฟต์แวร์") เพื่อจัดการในซอฟต์แวร์โดยไม่มีการ จำกัด รวมถึง แต่ไม่ จำกัด เฉพาะสิทธิ์ในการใช้สำเนาดัดแปลงผสานเผยแพร่เผยแพร่
ประกาศลิขสิทธิ์ข้างต้นและประกาศการอนุญาตนี้จะรวมอยู่ในสำเนาทั้งหมดหรือส่วนสำคัญของซอฟต์แวร์
ซอฟต์แวร์มีให้ "ตามสภาพ" โดยไม่มีการรับประกันใด ๆ ไม่ว่าโดยชัดแจ้งหรือโดยนัยรวมถึง แต่ไม่ จำกัด เฉพาะการรับประกันความสามารถในการค้าการออกกำลังกายสำหรับวัตถุประสงค์เฉพาะและการไม่เข้าร่วม ไม่ว่าในกรณีใดผู้เขียนหรือผู้ถือลิขสิทธิ์จะต้องรับผิดชอบต่อการเรียกร้องความเสียหายหรือความรับผิดอื่น ๆ ไม่ว่าจะเป็นการกระทำของสัญญาการละเมิดหรืออื่น ๆ ที่เกิดขึ้นจากหรือเกี่ยวข้องกับซอฟต์แวร์หรือการใช้งานหรือการติดต่ออื่น ๆ ในซอฟต์แวร์