0

サービス管理 REST API を介して VM イメージを作成することに関して、誰かが私を正しい方向に導いてくれることを願っています。私が試したすべてのことにより、「リクエスト本文の XML が無効であるか、正しく指定されていません」という 400 InvalidXmlRequest エラーが返されました。

適切にプロビジョニングされたサブスクリプション、ストレージ アカウント、コンテナー、および BLOB があるとします。x-ms-version: 2014-06-01 ヘッダーを使用して、適切に認証された POST 要求をhttps://management.core.windows.net/[OmittedSubscriptionId]/services/vmimages API に次の XM で送信しています。体内で:

<VMImages xmlns="http://schemas.microsoft.com/windowsazure" xmlns:i="http://www.w3.org/2001/XMLSchema-instance">
    <VMImage>
        <Name>my_image_20141120_service_sa01</Name>
        <Label>my_Image_20141120_service_SA01</Label>
        <Description>testimage</Description>
        <OSDiskConfiguration>
            <HostCaching>ReadWrite</HostCaching>
            <OSState>Specialized</OSState>
            <OS>Windows</OS>
            <MediaLink>https://myservicesa.blob.core.windows.net/vhds/myimage_20141120.vhd</MediaLink>
        </OSDiskConfiguration>
    </VMImage>
</VMImages>

http://msdn.microsoft.com/en-us/library/dn775054.aspxの手順に従って、必要なすべてのビットを指定したので、送信している xml の何が無効なのかわかりません。どんな助けでも大歓迎です!

4

3 に答える 3

0

astaykov に感謝します。PowerShell からのトラフィックを調べることは素晴らしいアイデアでした。この API のドキュメントは完全に間違っていることがわかりました。XML ペイロードが完全に異なるだけでなく、API 自体も異なります。呼び出す必要がある実際の API エンドポイントは次のとおりです。

https://management.core.windows.net/[OmittedSubscriptionId]/services/images 

「images」と「vmimages」であることに注意してください

POST の本文は次のようになります。

<OSImage xmlns="http://schemas.microsoft.com/windowsazure">
    <Label>identifier-of-image</Label>
    <MediaLink>uri-to-vhd</MediaLink>
    <Name>name-of-image</Name>
    <OS>Opearting-System</OS>
    <IsPremium>bool</IsPremium>
    <ShowInGui>bool</ShowInGui>
</OSImage>
于 2015-01-04T20:53:16.050 に答える