Obtenir les métadonnées OData $ au format JSON
est-il possible d'obtenir des métadonnées d'un service OData au format JSON?
Lorsque j'essaie d'utiliser format=json
, il ne fonctionne pas. Voici ce que j'ai essayé:
http://odata.informea.org/services/odata.svc/$metadata/?format=json
source d'informationauteur Omar
Vous devez vous connecter pour publier un commentaire.
La
$metadata
document est dans la CSDL format, actuellement, qui n'a qu'une représentation XML. (Comme une note de côté, si vous ne voulez demander le format json pour un autre type d'OData charge, assurez-vous que leformat
requête jeton a une$
en face d'elle:$format=json
.)Non, c'est pas possible. Vous pouvez, toutefois, obtenir le document de service en JSON, qui est un sous-ensemble de $document de métadonnées:
Ce n'aurez pas le type de l'information, mais il va liste des points d'entrée du service (c'est à dire, les jeux d'entités).
Comme une alternative à
?$format=json
vous pouvez aussi régler les deux en-têtes :Accept: application/json
Content-Type: application/json; charset=utf-8
Je ne suis pas sûr de ce qui est le minimum Odata version requise, mais cela fonctionne parfaitement pour moi sur Microsoft Dynamics NAV 2016, qui utilise Odata v4.
Vous pouvez utiliser jQuery pour obtenir de l'information pertinente à partir d'un service OData $métadonnées.
Prendre pour exemple:
Vous écrivez une unité de test pour vérifier le OData entités noms de propriété correspond à votre demande entités. Ensuite, vous devez récupérer les propriétés de l'OData entité.
J'ai écrit un simple fournisseur d'analyser certaines des informations nécessaires à partir des métadonnées, n'hésitez pas à étendre sur elle. D'abord, vous aurez besoin de quelques modèles simples, exprime les données, nous allons vous voulez convertir à partir de là laid noms XML
C'est le fournisseur de:
Je suis d'accord avec la réponse précédente. Ce n'est pas pris en charge par la spécification, mais certains OData frameworks /librairies sont sur le point de mettre en œuvre cette fonctionnalité.
Je pense Olingo. C'est peut-être utile pour vous, si vous aussi vous mettre en œuvre côté serveur. Voir à ce problème dans le Olingo JIRA pour plus de détails:
Espère que cela vous aide,
Thierry