ห้องสมุด Java เพื่อใช้ What3words V3 API
วิธี API ถูกจัดกลุ่มเป็นวัตถุบริการเดียวซึ่งสามารถจัดการได้จากส่วนกลางโดยอินสแตนซ์ WHAT3WORDSV3 มันจะทำหน้าที่เป็นโรงงานสำหรับจุดสิ้นสุด API ทั้งหมดและจะเริ่มต้นโดยอัตโนมัติด้วยคีย์ API ของคุณโดยอัตโนมัติ
หากต้องการรับคีย์ API โปรดไปที่ https://what3words.com/select-plan และสมัครใช้งานบัญชี
สิ่งประดิษฐ์มีให้ผ่าน Maven Central
< dependency >
< groupId >com.what3words</ groupId >
< artifactId >w3w-java-wrapper</ artifactId >
< version >3.1.19</ version >
</ dependency >
การใช้งาน 'com.what3words: w3w-java-wrapper: 3.1.19'
ดูเอกสาร API สาธารณะ 3 คำว่า whatwords
// For all requests a what3words API key is needed
What3WordsV3 api = new What3WordsV3 ( "what3words-api-key" );
// In the case that you run our Enterprise Suite API Server yourself, you may specify the URL to your own server like so:
//What3WordsV3 api = new What3WordsV3("what3words-api-key", "https://api.yourserver.com/v3/");
/**
* Additionally, if you run the Enterprise Suite API Server there is another optional setup() parameter: customHeaders.
* Use this if you need to send custom headers to your own server:
*/
//Map<String, String> headers = new HashMap<String, String>();
//headers.put("Name1", "Value1");
//headers.put("Name2", "Value2");
//What3WordsV3 api = new What3WordsV3("what3words-api-key", "https://api.yourserver.com/v3/", headers);
// Create and execute a request with the 3 word address such as "filled.count.soap"
ConvertToCoordinates coordinates = api . convertToCoordinates ( "filled.count.soap" ). execute ();
if ( coordinates . isSuccessful ()) { // the request was successful
System . out . println ( "Coordinates: " + coordinates );
} else { // the request was not successful
What3WordsError error = coordinates . getError ();
if ( error == What3WordsError . BAD_WORDS ) { // The three word address provided is invalid
System . out . println ( "BadWords: " + error . getMessage ());
} else if ( error == What3WordsError . INTERNAL_SERVER_ERROR ) { // Server Error
System . out . println ( "InternalServerError: " + error . getMessage ());
} else if ( error == What3WordsError . NETWORK_ERROR ) { // Network Error
System . out . println ( "NetworkError: " + error . getMessage ());
} else { // Unknown Error
System . out . println ( error + ": " + error . getMessage ());
}
}
ตรวจสอบว่าสตริงเป็นที่อยู่ 3 คำที่เป็นไปได้หรือไม่ เตือนความจำว่าสิ่งนี้เพียงแค่ตรวจสอบรูปแบบของข้อความดังนั้นเหตุใดจึงเรียกว่าเป็นไปได้ที่จะตรวจสอบว่าเป็นที่อยู่ของจริง 3 คำโปรดใช้เป็นที่อยู่ 3 คำที่ถูกต้องหรือไม่
Boolean isPossible = What3WordsV3 . isPossible3wa ( "filled.count.soap" ); // returns true
Boolean isPossible = What3WordsV3 . isPossible3wa ( "not a 3wa" ); // returns false
Boolean isPossible = What3WordsV3 . isPossible3wa ( "not.3wa address" ); //returns false
ตรวจสอบว่าสตริงเป็นที่อยู่ที่เป็นไปได้ที่ที่อยู่ what3 whats, regex นี้อนุญาตให้ตัวคั่นที่แตกต่างกัน (เช่น: ไม่ใช้มาตรฐานเต็ม/จุด) เครื่องเตือนใจว่านี่เป็นเพียงการตรวจสอบรูปแบบของข้อความดังนั้นเหตุใดจึงเรียกว่า didyoumean3wa เพื่อตรวจสอบว่าเป็นที่อยู่จริงของ 3 คำโปรดใช้ที่อยู่ 3 คำที่ถูกต้องโดยใช้การหยุดแบบเต็มเป็นตัวคั่นหรือไม่
Boolean isDym = What3WordsV3 . didYouMean3wa ( "filled-count-soap" ); // returns true
Boolean isDym = What3WordsV3 . didYouMean3wa ( "not valid" ); // returns false
Boolean isDym = What3WordsV3 . didYouMean3wa ( "not.3wa address" ); // returns false
Boolean isDym = What3WordsV3 . didYouMean3wa ( "not.threewa address" ); // returns true
รับที่อยู่ที่เป็นไปได้ใด ๆ ที่อยู่จากข้อความ จะส่งคืนรายการที่ว่างเปล่าหากไม่พบที่อยู่ที่เป็นไปได้ เตือนว่าสิ่งนี้เพียงแค่ตรวจสอบรูปแบบของข้อความดังนั้นเหตุใดจึงเรียกว่า findPossible3wa เพื่อตรวจสอบว่าเป็นที่อยู่ของจริง 3 คำโปรดใช้ที่อยู่ 3 คำที่ถูกต้องเพื่อตรวจสอบแต่ละรายการของรายการ
List < String > possible = What3WordsV3 . findPossible3wa ( "Please leave by my porch at filled.count.soap" ); //returns ["filled.count.soap"]
List < String > possible = What3WordsV3 . findPossible3wa ( "Please leave by my porch at filled.count.soap or deed.tulip.judge" ); // returns ["filled.count.soap", "deed.tulip.judge"]
List < String > possible = What3WordsV3 . findPossible3wa ( "Please leave by my porch at" ); // returns []