tempuri.org คืออะไร?


93

ทำไม tempuri.org ถึงมีอยู่? เหตุใด XML Webservice จึงต้องมีเนมสเปซของตัวเองซึ่งแตกต่างจากที่อื่น ๆ บนเว็บ

คำตอบ:


44

บริการเว็บไซต์ต้องการเนมสเปซที่ไม่ซ้ำกันเพื่อไม่ให้สับสนระหว่างสคีมาของแต่ละอื่น ๆ และอะไรก็ตาม URL (โดเมนโดเมนย่อยโดเมนย่อย ฯลฯ ) เป็นตัวระบุที่ชาญฉลาดเนื่องจาก "รับประกัน" ว่าจะไม่ซ้ำกันและในสถานการณ์ส่วนใหญ่คุณมีอยู่แล้ว


ในบางครั้งคุณอาจมีสถานการณ์ที่คุณจัดเก็บข้อมูลจากแหล่งข้อมูล 2 แหล่ง (หรือมากกว่า) ในเอกสาร XML เดียว (เช่นรวบรวมข้อมูลจากผู้ผลิตสารเคมีหลายรายเกี่ยวกับสารที่เป็นที่รู้จัก) และสามารถใช้เนมสเปซได้ สำหรับแต่ละผู้ผลิตช่วยให้คุณมีการ XML เดียวกันเช่นแท็กองค์ประกอบ<comp1:SubstanceName>Hand Soap</comp1:SubstanceName>และ<comp2:SubstanceName>Palmolive</comp2:SubstanceName>และ<comp3:SubstanceName>Soft Soap</comp3:SubstanceName>โดยไม่ต้องชนกันและมีความชัดเจนว่าข้อมูลมาจาก
bkwdesign

1
tempuri.org คืออะไร?
จันทร์ที่

57

น่าเสียดายที่tempuri.orgตอนนี้ URL เพิ่งเปลี่ยนเส้นทางไปที่ Bing

คุณสามารถดูสิ่งที่ใช้ในการแสดงผลผ่านarchive.org:

https://web.archive.org/web/20090304024056/http://tempuri.org/

อ้างถึง:

บริการเว็บ XML แต่ละรายการต้องการเนมสเปซเฉพาะเพื่อให้แอปพลิเคชันไคลเอนต์แยกความแตกต่างจากบริการอื่น ๆ บนเว็บ ตามค่าเริ่มต้น ASP.Net Web Services จะใช้http://tempuri.org/เพื่อจุดประสงค์นี้ แม้ว่าจะเหมาะสำหรับ XML Web Services ที่อยู่ระหว่างการพัฒนา แต่บริการที่เผยแพร่ควรใช้เนมสเปซถาวรที่ไม่ซ้ำใคร

บริการเว็บ XML ของคุณควรระบุโดยเนมสเปซที่คุณควบคุม ตัวอย่างเช่นคุณสามารถใช้ชื่อโดเมนอินเทอร์เน็ตของ บริษัท ของคุณเป็นส่วนหนึ่งของเนมสเปซ แม้ว่าเนมสเปซจำนวนมากจะดูเหมือน URL แต่ก็ไม่จำเป็นต้องชี้ไปที่ทรัพยากรจริงบนเว็บ

สำหรับ XML Web Services ที่สร้าง [sic] โดยใช้ ASP.NET สามารถเปลี่ยนเนมสเปซเริ่มต้นได้โดยใช้คุณสมบัติเนมสเปซของแอ็ตทริบิวต์ WebService แอ็ตทริบิวต์ WebService ถูกนำไปใช้กับคลาสที่มีวิธี XML Web Service ด้านล่างนี้คือตัวอย่างโค้ดที่ตั้งค่าเนมสเปซเป็น " http://microsoft.com/webservices/ ":

ค#

[WebService(Namespace="http://microsoft.com/webservices/")]
public class MyWebService {
   // implementation
}

Visual Basic.NET

<WebService(Namespace:="http://microsoft.com/webservices/")> Public Class MyWebService
    ' implementation
End Class

Visual J # .NET

/**@attribute WebService(Namespace="http://microsoft.com/webservices/")*/
public class MyWebService {
    // implementation
}

นอกจากนี้ยังควรอ่านหัวข้อ 'A 1.3 Generating URI' ที่:

http://www.w3.org/TR/wsdl#_Toc492291092



9

http://en.wikipedia.org/wiki/Tempuri

tempuri.org คือเนมสเปซ URI เริ่มต้นที่ใช้โดยผลิตภัณฑ์พัฒนาของ Microsoft เช่น Visual Studio


7
ด้วยขนาดของบทความคุณอาจอ้างถึงเนื้อหาทั้งหมดด้วยเช่นกัน
Chris Charabaruk

4
tempuri.org ไม่ใช่เฉพาะสำหรับ Microsoft แต่จริงๆแล้วมีอธิบายไว้ในบันทึกย่อของ W3C บน WDSL: w3.org/TR/wsdl#_Toc492291092 - "URI พื้นฐาน" tempuri.org "สามารถใช้เพื่อสร้าง URI ได้โดยไม่ต้องมีการเชื่อมโยงเฉพาะใด ๆ ให้กับเอนทิตี "
Kev

สำหรับสิ่งที่คุ้มค่าดูเหมือนจะไม่เป็นเช่นนั้นอีกต่อไปที่ tempuri.org ได้รับการรับรองโดย w3.org (อย่างน้อยก็ในหน้าที่เชื่อมโยงนั้น)
Mikeb

7

โปรดทราบว่าเนมสเปซที่อยู่ในรูปแบบของ URL เว็บที่ถูกต้องไม่จำเป็นต้องถูกยกเลิกการอ้างอิงเช่นคุณไม่จำเป็นต้องแสดงเนื้อหาจริงที่ URL นั้น สิ่งที่สำคัญก็คือเนมสเปซนั้นไม่ซ้ำกันทั่วโลก

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.