مشاركة عبر


مراجعات قيمة المفتاح

تحدد مراجعة قيمة المفتاح التمثيل التاريخي لمورد قيمة المفتاح. تنتهي صلاحية المراجعات بعد 7 أيام لمخازن المستوى المجاني، أو 30 يومًا لمخازن المستوى القياسي. تدعم المراجعات عملية List.

بالنسبة إلى جميع العمليات، key هي معلمة اختيارية. في حالة الحذف، فإنها تعني أي مفتاح.

بالنسبة إلى جميع العمليات، label هي معلمة اختيارية. في حال تم حذفها، فإنها تعني أي تسمية.

المتطلبات الأساسية

  • لابد من مصادقة جميع طلبات HTTP. راجع القسم authentication.
  • يجب أن توفر جميع طلبات HTTP api-version صراحةً. راجع قسم الإصدار.

مراجعات القائمة

GET /revisions?label=*&api-version={api-version} HTTP/1.1

الاستجابات:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.kvset+json; charset=utf-8"
Accept-Ranges: items
{
    "items": [
        {
          "etag": "4f6dd610dd5e4deebc7fbaef685fb903",
          "key": "{key}",
          "label": "{label}",
          "content_type": null,
          "value": "example value",
          "last_modified": "2017-12-05T02:41:26.4874615+00:00",
          "tags": []
        },
        ...
    ],
    "@nextLink": "{relative uri}"
}

فصل الصفحات

يتم ترقيم النتيجة في حال تجاوز عدد العناصر التي تم إرجاعها حد الاستجابة. اتبع عنوان الاستجابة Link الاختيارية واستخدام rel="next" للتنقل. يقدم المحتوى، بدلاً من ذلك، ارتباطًا تاليًا في شكل الخاصية @nextLink.

GET /revisions?api-version={api-version} HTTP/1.1

الاستجابة:

HTTP/1.1 OK
Content-Type: application/vnd.microsoft.appconfig.kvs+json; charset=utf-8
Accept-Ranges: items
Link: <{relative uri}>; rel="next"
{
    "items": [
        ...
    ],
    "@nextLink": "{relative uri}"
}

قائمة المجموعة الفرعية للمراجعات

استخدم عنوان الطلب Range. تحتوي الاستجابة Content-Range على رأس. إذا لم يتمكن الخادم من تلبية النطاق المطلوب، فإنه يستجيب باستخدام HTTP 416 (RangeNotSatisfiable).

GET /revisions?api-version={api-version} HTTP/1.1
Range: items=0-2

Response

HTTP/1.1 206 Partial Content
Content-Type: application/vnd.microsoft.appconfig.revs+json; charset=utf-8
Content-Range: items 0-2/80

التصفية

يتم دعم مزيج من عامل التصفية key وlabel. استخدم معلمات سلسلة الاستعلام الاختيارية key وlabel.

GET /revisions?key={key}&label={label}&api-version={api-version}

يتم دعم مزيج من key، label والتصفية tags . استخدم معلمات سلسلة الاستعلام الاختياريةkeylabel.tags يمكن توفير عوامل تصفية علامات متعددة كمعلمات سلسلة استعلام بالتنسيق tagName=tagValue . يجب أن تكون عوامل تصفية العلامات مطابقة تماما.

GET /revisions?key={key}&label={label}&tags={tagFilter1}&tags={tagFilter2}&api-version={api-version}

عوامل التصفيةِ المدعومة

عامل تصفية key التأثير
تم حذف key أو key=* يطابق أي مفتاح
key=abc يطابق مفتاحًا باسم abc
key=abc* يُطابق أسماء key التي تبدأ بـ abc
key=*abc يطابق أسماء المفاتيح التي تنتهي بـ abc
key=*abc* يطابق أسماء المفاتيح التي تنتهي بـ abc
key=abc,xyz يُطابق أسماء key abc أو xyz (تقتصر على 5 CSV)
عامل تصفية التسمية التأثير
تم حذف label أو label= يطابق قيم المفاتيح بدون تسمية
label=* يُطابق أي تسمية
label=prod يطابق التسمية prod
label=prod* يطابق التسميات التي تبدأ بـ prod
label=*prod يطابق التسميات التي تنتهي بـ prod
label=*prod* يطابق التسميات التي تحتوي على prod
label=prod,test يطابق التسميات prod أو test (يقتصر على 5 CSV)
عامل تصفية العلامات التأثير
تم حذف tags أو tags= يطابق أي علامة
tags=group=app1 يطابق قيم المفاتيح التي تحتوي على علامة تسمى group بقيمة app1
tags=group=app1&tags=env=prod يطابق قيم المفاتيح التي تحتوي على علامة مسماة group بقيمة app1 وعلامة مسماة env بقيمة prod(تقتصر على 5 عوامل تصفية علامات)
tags=tag1=%00 يطابق قيم المفاتيح التي تحتوي على علامة تسمى tag1 بقيمة null
tags=tag1= يطابق قيم المفاتيح التي تحتوي على علامة تسمى tag1 بقيمة فارغة

حروف محجوزة

الحروف المحجوزة هي:

*، ، \,

في حال كان الحرف المحجوز جزءًا من القيمة، فيجب إلغاءه باستخدام \{Reserved Character}. يمكن أيضًا إلغاء الحروف غير المحجوزة.

التحقق من صحة التصفية

في حال حدث خطأ في التحقق من صحة عامل التصفية، تصبح الاستجابة هي HTTP 400 مع تفاصيل الخطأ:

HTTP/1.1 400 Bad Request
Content-Type: application/problem+json; charset=utf-8
{
  "type": "https://azconfig.io/errors/invalid-argument",
  "title": "Invalid request parameter '{filter}'",
  "name": "{filter}",
  "detail": "{filter}(2): Invalid character",
  "status": 400
}

الأمثلة

  • الكل:

    GET /revisions
    
  • العناصر التي يبدأ فيها اسم المفتاح بـ abc:

    GET /revisions?key=abc*&api-version={api-version}
    
  • العناصر التي يكون فيها اسم المفتاح إما abc أو xyz، وتحتوي التسميات على prod:

    GET /revisions?key=abc,xyz&label=*prod*&api-version={api-version}
    

طلب حقول خاصة

استخدم معلمة سلسلةِ الاستعلام الاختيارية $select وقدم قائمة مفصولة بفواصل بالحقول المطلوبة. في حال تم حذف المعلمة $select تحتوي الاستجابة على المجموعة الافتراضية.

GET /revisions?$select=value,label,last_modified&api-version={api-version} HTTP/1.1

الوصول استنادًا إلى الوقت

يمكنك الحصول على تمثيل النتيجة كما كانت في وقت سابق. لمزيد من المعلومات، راجع HTTP Framework for Time-Based Access to Resource States -- Memento، القسم 2.1.1.

GET /revisions?api-version={api-version} HTTP/1.1
Accept-Datetime: Sat, 12 May 2018 02:10:00 GMT

الاستجابة:

HTTP/1.1 200 OK
Content-Type: application/vnd.microsoft.appconfig.revs+json"
Memento-Datetime: Sat, 12 May 2018 02:10:00 GMT
Link: <{relative uri}>; rel="original"
{
    "items": [
        ....
    ]
}