Qu'est-ce que tempuri.org?


92

Pourquoi tempuri.org existe-t-il? Pourquoi chaque service Web XML a-t-il besoin de son propre espace de noms, unique de tout autre sur le Web?

Réponses:


44

Les Webservices nécessitent des espaces de noms uniques afin de ne pas confondre les schémas les uns avec les autres. Une URL (domaine, sous-domaine, sous-sous-domaine, etc.) est un identifiant intelligent car il est «garanti» d'être unique et, dans la plupart des cas, vous en avez déjà un.


De temps en temps, vous pouvez avoir une situation dans laquelle vous stockez des données de 2 (ou plus) sources dans un seul document XML (par exemple en rassemblant des informations de plusieurs fabricants de produits chimiques sur une substance bien connue) et en étant capable d'utiliser des espaces de noms pour chaque fabricant vous permet d'avoir la même balise d'élément Xml, par exemple <comp1:SubstanceName>Hand Soap</comp1:SubstanceName>et <comp2:SubstanceName>Palmolive</comp2:SubstanceName>et <comp3:SubstanceName>Soft Soap</comp3:SubstanceName>sans collision, et avec clarté d'où proviennent les données
bkwdesign

1
Qu'est-ce que tempuri.org?
lun

56

Malheureusement, l' tempuri.orgURL redirige maintenant simplement vers Bing.

Vous pouvez voir ce qu'il rendait via archive.org:

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

Citer:

Chaque service Web XML a besoin d'un espace de noms unique pour que les applications clientes le distinguent des autres services sur le Web. Par défaut, les services Web ASP.Net utilisent http://tempuri.org/ à cette fin. Bien que cela convienne aux services Web XML en cours de développement, les services publiés doivent utiliser un espace de noms unique et permanent.

Votre service Web XML doit être identifié par un espace de noms que vous contrôlez. Par exemple, vous pouvez utiliser le nom de domaine Internet de votre entreprise dans le cadre de l'espace de noms. Bien que de nombreux espaces de noms ressemblent à des URL, ils n'ont pas besoin de pointer vers des ressources réelles sur le Web.

Pour les services Web XML créant [sic] à l'aide d'ASP.NET, l'espace de noms par défaut peut être modifié à l'aide de la propriété Namespace de l'attribut WebService. L'attribut WebService est appliqué à la classe qui contient les méthodes du service Web XML. Vous trouverez ci-dessous un exemple de code qui définit l’espace de noms sur " http://microsoft.com/webservices/ ":

C #

[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
}

Il vaut également la peine de lire la section 'A 1.3 Génération d'URI' à:

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


11

Probablement pour garantir que les webservices publics seront uniques.

Cela me fait toujours penser à de délicieuses friandises frites ...


9

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

tempuri.org est l'URI d'espace de noms par défaut utilisé par les produits de développement Microsoft, comme Visual Studio.


7
Compte tenu de la taille de l'article, vous auriez tout aussi bien pu le citer en entier.
Chris Charabaruk

4
tempuri.org n'est pas spécifique à Microsoft, il est en fait décrit dans les notes du W3C sur WDSL: w3.org/TR/wsdl#_Toc492291092 - "L'URI de base" tempuri.org "peut être utilisé pour construire un URI sans aucune association unique à une entité "
Kev

Pour ce que ça vaut, cela ne semble plus être le cas que tempuri.org ait l'approbation de w3.org (au moins sur cette page liée)
Mikeb

7

Notez que les espaces de noms qui sont au format d'une URL Web valide n'ont pas nécessairement besoin d'être déréférencés, c'est-à-dire que vous n'avez pas besoin de diffuser du contenu réel à cette URL. Tout ce qui compte, c'est que l'espace de noms soit globalement unique.

En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.