مرجع متغیرهای جریان

شما در حال مشاهده اسناد Apigee Edge هستید.
به مستندات Apigee X بروید .
اطلاعات

این بخش اطلاعات مرجع در مورد متغیرهای جریان را ارائه می دهد.

Apigee Edge متغیرهای جریان زیر را تعریف می کند:

apigee              loadbalancing        router
apiproxy            message              servicecallout
application         messageid            system
client              organization         target
current             proxy                variable
environment         request              virtualhost
error               response
is                  route

هر یک از این متغیرها در بخش های بعدی توضیح داده شده است.

apigee

یک متغیر کمکی که اطلاعاتی در مورد زمان اجرای خط مشی ارائه می دهد.

جدول زیر ویژگی های متغیر apigee را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه شروع می شود
apigee.metrics.policy. policy_name .timeTaken عدد صحیح فقط بخوانید زمانی که این سیاست در نانوثانیه اجرا شد. سیاست

apiproxy

پروکسی API را توصیف می کند.

جدول زیر ویژگی های متغیر apiproxy را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه شروع می شود
apiproxy.name رشته فقط بخوانید نام پروکسی API. به عنوان مثال، "پروکسی من". درخواست پروکسی
apiproxy.revision رشته فقط بخوانید شماره بازبینی یک پروکسی API. به عنوان مثال، "6". درخواست پروکسی

برای اطلاعات بیشتر در مورد کار با پراکسی های API، به درک API ها و پراکسی های API مراجعه کنید.

application

ظرفی برای ویژگی application.basepath .

جدول زیر ویژگی های متغیر application را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
application.basepath رشته فقط بخوانید مسیر پایه استقرار (مشخص شده در طول استقرار API). درخواست پروکسی

client

برنامه یا سیستمی که درخواستی را به روتر Edge ارسال کرده است.

جدول زیر ویژگی های متغیر client را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
client.cn رشته فقط بخوانید

نام مشترک مشخص شده در گواهی TLS/SSL ارائه شده توسط برنامه مشتری.

درخواست پروکسی
client.country رشته فقط بخوانید

کشور در گواهی TLS/SSL ارائه شده توسط برنامه مشتری.

درخواست پروکسی
client.email.address رشته فقط بخوانید

آدرس ایمیل در گواهی TLS/SSL ارائه شده توسط برنامه مشتری.

درخواست پروکسی
client.host رشته فقط بخوانید

IP میزبان HTTP مرتبط با درخواست دریافت شده توسط ProxyEndpoint.

درخواست پروکسی
client.ip رشته فقط بخوانید

آدرس IP کلاینت یا سیستمی که پیام را به روتر Edge ارسال می کند. به عنوان مثال، این می تواند IP اصلی مشتری یا یک IP متعادل کننده بار باشد.

درخواست پروکسی
client.locality رشته فقط بخوانید

محل (شهر) در گواهی TLS/SSL ارائه شده توسط مشتری.

درخواست پروکسی
client.organization رشته فقط بخوانید سازمان در گواهی TLS/SSL ارائه شده توسط مشتری. (لزوما معادل سازمان در Apigee Edge نیست.) درخواست پروکسی
client.organization.unit رشته فقط بخوانید

واحد سازمانی در گواهی TLS/SSL ارائه شده توسط مشتری.

درخواست پروکسی
client.port عدد صحیح فقط بخوانید

پورت HTTP مرتبط با درخواست مشتری مبدا به ProxyEndpoint.

درخواست پروکسی
client.received.end.time رشته فقط بخوانید

زمانی که به صورت رشته ای بیان می شود، که در آن پروکسی دریافت درخواست را از مشتری مبدا در ProxyEndpoint به پایان رساند. به عنوان مثال: Wed, 21 Aug 2013 19:16:47 UTC.

این مقدار زمانی نمایش رشته ای از مقدار زمان 32 بیتی مربوطه است. به عنوان مثال، «چهارشنبه، 21 اوت 2013، 19:16:47 UTC» با مقدار مهر زمانی 1377112607413 مطابقت دارد.

درخواست پروکسی
client.received.end.timestamp طولانی فقط بخوانید

مقدار مهر زمانی که مشخص می‌کند پروکسی چه زمانی درخواست را از مشتری اصلی در ProxyEndpoint دریافت کرد. این مقدار یک عدد صحیح 64 بیتی (طولانی) است که حاوی تعداد میلی ثانیه های سپری شده از نیمه شب، در 1 ژانویه 1970 UTC است.

درخواست پروکسی
client.received.start.time رشته فقط بخوانید

زمانی که به صورت رشته ای بیان می شود، که در آن پروکسی شروع به دریافت درخواست از مشتری مبدا در ProxyEndpoint کرد. به عنوان مثال: Wed, 21 Aug 2013 19:16:47 UTC

این مقدار زمانی نمایش رشته ای از مقدار زمان 32 بیتی مربوطه است. به عنوان مثال، «چهارشنبه، 21 اوت 2013، 19:16:47 UTC» با مقدار مهر زمانی 1377112607413 مطابقت دارد.

درخواست پروکسی
client.received.start.timestamp طولانی فقط بخوانید

مقدار مهر زمانی که مشخص می‌کند پروکسی چه زمانی درخواست را از مشتری اصلی در ProxyEndpoint دریافت کرد. این مقدار یک عدد صحیح 64 بیتی (طولانی) است که حاوی تعداد میلی ثانیه های سپری شده از نیمه شب، در 1 ژانویه 1970 UTC است.

درخواست پروکسی
client.scheme رشته فقط بخوانید

بسته به حمل و نقلی که برنامه مشتری برای ارسال پیام درخواست استفاده می کند، http یا https را برمی گرداند.

درخواست پروکسی
client.sent.end.time رشته فقط بخوانید

زمانی که به صورت رشته ای بیان می شود، که در آن پروکسی ارسال پاسخ را از ProxyEndpoint به مشتری تمام کرد. به عنوان مثال: "Wed, 21 Aug 2013 19:16:47 UTC".

این مقدار یک نمایش رشته ای از client.sent.end.timestamp 32 بیتی مربوطه است. به عنوان مثال، "Wed, 21 Aug 2013 19:16:47 UTC" با مقدار مهر زمانی 1377112607413 مطابقت دارد.

PostClientFlow
client.sent.end.timestamp طولانی فقط بخوانید مقدار مهر زمانی که مشخص می‌کند ProxyEndpoint چه زمانی پاسخ را به برنامه مشتری اصلی بازگرداند. این مقدار یک عدد صحیح 64 بیتی (طولانی) است که حاوی تعداد میلی ثانیه های سپری شده از نیمه شب، در 1 ژانویه 1970 UTC است. PostClientFlow
client.sent.start.time رشته فقط بخوانید زمانی که به صورت رشته ای بیان می شود، زمانی که ProxyEndpoint شروع به بازگرداندن پاسخ به برنامه مشتری اصلی کرد. به عنوان مثال، "Wed, 21 Aug 2013 19:16:47 UTC".

این مقدار یک نمایش رشته ای از client.sent.start.timestamp 32 بیتی مربوطه است. به عنوان مثال، "Wed, 21 Aug 2013 19:16:47 UTC" با مقدار مهر زمانی 1377112607413 مطابقت دارد.

PostClientFlow
client.sent.start.timestamp طولانی فقط بخوانید هنگامی که پروکسی شروع به ارسال پاسخ به مشتری از ProxyEndpoint کرد. این مقدار به عنوان یک عدد صحیح 64 بیتی (طولانی) حاوی تعداد میلی ثانیه های سپری شده از نیمه شب، در 1 ژانویه 1970 UTC بیان می شود. PostClientFlow
client.ssl.enabled رشته فقط بخوانید

"درست" اگر ProxyEndpoint برای TLS/SSL پیکربندی شده باشد. در غیر این صورت "کاذب".

درخواست پروکسی
client.state رشته فقط بخوانید

وضعیت موجود در گواهی TLS/SSL ارائه شده توسط مشتری.

درخواست پروکسی

current

حاوی اطلاعاتی در مورد جریان پراکسی API فعلی است.

جدول زیر ویژگی های متغیر current را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
current.flow.name رشته فقط بخوانید نام جریانی که در حال اجرا است (مانند "PreFlow"، "PostFlow"، یا نام یک جریان شرطی). درخواست پروکسی
current.flow.description رشته فقط بخوانید شرح جریان در حال اجرا. این همان مقدار عنصر <Description> در پیکربندی XML جریان است. درخواست پروکسی

می‌توانید این ویژگی‌ها را در نمای Trace UI Edge مشاهده کنید. با این حال، این ویژگی ها به طور پیش فرض در نمای Trace UI کلاسیک قابل مشاهده نیستند.

environment

محفظه ای برای ویژگی environment.name .

جدول زیر ویژگی های متغیر environment را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
environment.name رشته فقط بخوانید نام محیطی که تراکنش در آن انجام شد. درخواست پروکسی

error

یک شی متنی که نشان دهنده یک پیام خطا در جریان خطا است.

جدول زیر ویژگی های متغیر error را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
error message بخوان / بنویس خطای نوع message ، که یک شی متنی در جریان خطا است. خطا
error.content رشته بخوان / بنویس محتوای خطا خطا
error.message رشته فقط بخوانید

پیام مرتبط با یک خطا که مقدار آن فقط قبل از اجرای خطای Flow در دسترس است.

خطا
error.status.code عدد صحیح فقط بخوانید

کد وضعیت HTTP مرتبط با خطا. به عنوان مثال، "400".

خطا
error.reason.phrase رشته فقط بخوانید

عبارت دلیل مرتبط با خطا. به عنوان مثال: "درخواست بد".

خطا
error.transport.message پیام حمل و نقل فقط بخوانید

هر گونه خطا از نوع TransportMessage.

خطا
error.state عدد صحیح فقط بخوانید

محل وقوع خطا را در جریان بیان کنید.

خطا
error.header. header_name رشته بخوان / بنویس

هدر پاسخ را دریافت یا تنظیم کنید.

خطا

fault

متغیر جریانی که وقتی خط مشی خطایی ایجاد می کند روی کد خطای زمان اجرا تنظیم می شود. مقادیر کد خطا برای هر خط مشی خاص است.

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
fault. fault_name رشته فقط بخوانید fault_name نام خطا است، همانطور که در جدول خطاهای زمان اجرا موجود در هر موضوع مرجع خط مشی توضیح داده شده است. خطا

is

ظرفی برای ویژگی is.error .

جدول زیر ویژگی های متغیر is توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
is.error بولی فقط بخوانید

پرچم خطا.

درخواست پروکسی

loadbalancing

اطلاعاتی در مورد وضعیت تعادل بار TargetEndpoint ارائه می دهد.

جدول زیر ویژگی های متغیر loadbalancing را شرح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
loadbalancing.failedservers آرایه از رشته ها فقط بخوانید

لیست TargetServerهای ناموفق در حین متعادل کردن بار در TargetEndpoint.

پاسخ هدف
loadbalancing.isfallback بولی فقط بخوانید

"درست" اگر بازگشت مجدد برای TargetServer فراخوانی شده در طول متعادل سازی بار در TargetEndpoint فعال باشد.

پاسخ هدف
loadbalancing.targetserver رشته فقط بخوانید

TargetServer در هنگام تعادل بار در TargetEndpoint فراخوانی می شود. تنها در صورتی تنظیم کنید که عنصر <Path> هنگام تعریف عنصر متعادل کننده بار تنظیم شده باشد.

پاسخ هدف

message

یک شی متنی، با همان مقدار request در جریان درخواست یا به عنوان response در جریان پاسخ یا به عنوان error در جریان خطا.

جدول زیر ویژگی های متغیر message را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
message message بخوان / بنویس

یک شی متنی، با همان مقدار request در جریان درخواست یا به عنوان response در جریان پاسخ یا به عنوان error در جریان خطا.

درخواست پروکسی
message.content رشته بخوان / بنویس

محتوای درخواست، پاسخ یا پیام خطا.

درخواست پروکسی
message.formparam. param_name رشته بخوان / بنویس

مقدار پارامتر فرم مشخص شده.

درخواست پروکسی
message.formparam. param_name .
values
مجموعه فقط بخوانید

تمام مقادیر پارامتر فرم مشخص شده در پیام.

درخواست پروکسی
message.formparam. param_name .
values.count
عدد صحیح فقط بخوانید

شمارش مقادیر پارامترهای فرم مشخص شده در پیام./p>

درخواست پروکسی
message.formparams.count عدد صحیح فقط بخوانید

تعداد تمام پارامترهای فرم در پیام.

درخواست پروکسی
message.formparams.names مجموعه فقط بخوانید

مقدار تمام پارامترهای فرم در پیام.

درخواست پروکسی
message.formstring رشته فقط بخوانید

مقدار رشته فرم در پیام.

درخواست پروکسی
message.header. header_name رشته بخوان / بنویس

مقدار هدر HTTP مشخص شده را در پیام دریافت یا تنظیم می کند. اگر سرصفحه حاوی کاما باشد، پس از خواندن فقط قسمتی از متن را تا اولین کاما دریافت خواهید کرد. اگر کل هدر را می خواهید، از فرم request.header. header_name .
values

درخواست پروکسی
message.header. header_name . N رشته بخوان / بنویس

مقدار N امین مقدار هدر خاص در پیام، بسته به وضعیت جریان، درخواست یا پاسخ. Apigee Edge مقادیر متن سرصفحه را با کاما تقسیم می کند. توجه داشته باشید که شاخصی که مقدار آن برای N استفاده می شود، مبتنی بر 1 است، نه بر اساس 0.

به عنوان مثال: اگر هدر Cache-control "public,maxage=16544" باشد، مقدار بازگشتی message.header.cache-control.1 "maxage=16544" است.

درخواست پروکسی
message.header. header_name .
values
مجموعه فقط بخوانید

تمام مقادیر نام هدر HTTP مشخص شده در پیام.

درخواست پروکسی
message.header. header_name .
values.count
عدد صحیح فقط بخوانید

تعداد مقادیر نام هدر HTTP مشخص شده در پیام.

درخواست پروکسی
message.headers.count عدد صحیح فقط بخوانید

تعداد تمام هدرهای HTTP در پیام.

درخواست پروکسی
message.headers.names مجموعه فقط بخوانید

مقدار تمام هدرهای HTTP در پیام

درخواست پروکسی
message.path رشته بخوان / بنویس

مسیر پیام درخواست کامل در URL به استثنای هر گونه پارامتر پرس و جو.

درخواست پروکسی
message.queryparam. param_name رشته فقط بخوانید

پارامتر درخواست پیام مشخص شده را برمی گرداند.

درخواست پروکسی
message.queryparam. param_name . N رشته بخوان / بنویس

مقدار پارامتر پرس و جوی N در پیام. برای مثال، اگر request.querystring "a=hello&a=world" باشد، مقدار بازگشتی message.queryparam.a.1 "hello" است.

به عنوان مثالی از نوشتن چندین مقدار برای یک نام پارامتر پرس و جو، مانند "type=siteid:1&type=language:us-en&type=currency:USD"، موارد زیر را تنظیم کنید:

  • message.queryparam.type.1 به "siteid:1"
  • message.queryparam.type.2 به "language:en-us"
  • message.queryparam.type.3 به "currency:USD"
درخواست پروکسی
message.queryparam. param_name .
values
مجموعه فقط بخوانید

تمام مقادیر یک پارامتر پرس و جوی خاص در پیام، به عنوان یک لیست جدا شده با کاما فرمت شده است.

برای مثال، اگر رشته پرس و جو a=hello&a=world باشد، مقدار message.queryparam.a.values ​​"['hello', 'world']" است.

درخواست پروکسی
message.queryparam. param_name .
values.count
عدد صحیح فقط بخوانید

تعداد کل یک پارامتر پرس و جو مشخص شده مرتبط با درخواست ارسال شده به ProxyEndpoint از برنامه مشتری.

درخواست پروکسی
message.queryparams.count عدد صحیح فقط بخوانید

تعداد کل تمام پارامترهای پرس و جو مرتبط با درخواست ارسال شده به ProxyEndpoint از برنامه مشتری.

درخواست پروکسی
message.queryparams.names مجموعه فقط بخوانید

فهرستی از نام‌های پارامترهای درخواست مرتبط با درخواست ارسال شده به ProxyEndpoint از برنامه مشتری.

برای تکرار نام پارامترهای پرس و جو با استفاده از جاوا اسکریپت، به پست انجمن Apigee زیر مراجعه کنید: چگونه مجموعه را از "request.queryparams.names" در JS تکرار می کنید؟ در جامعه Apigee .

درخواست پروکسی
message.querystring رشته فقط بخوانید

رشته‌ای حاوی نام‌ها و مقادیر پارامترهای پرس و جو مرتبط با درخواست ارسال شده به ProxyEndpoint از برنامه مشتری.

به عنوان مثال، برای درخواست "http://api.apifactory.com/inventors?name=nick&surname=danger"، مقدار message.querystring "name=nick&surname=danger" است.

درخواست پروکسی
message.reason.phrase رشته فقط بخوانید

ReasonPhrase پیام پاسخ از هدف.

پاسخ هدف
message.status.code عدد صحیح فقط بخوانید

کد وضعیت HTTP پیام پاسخ از مقصد.

پاسخ هدف
message.transport.message پیام حمل و نقل فقط بخوانید

پیامی از نوع TransportMessage که یک شی متنی است.

درخواست پروکسی
message.uri رشته فقط بخوانید

مسیر URI کامل (به دنبال URL دامنه) شامل پارامترهای پرس و جو.

به عنوان مثال، برای درخواست "http://api.apifactory.com/inventors?name=nikola&surname=tesla"، این متغیر "inventors?name=nikola&surname=tesla" را برمی‌گرداند.

درخواست پروکسی
message.verb رشته فقط بخوانید

فعل HTTP ( GET ، PUT ، POST ، DELETE ، و غیره) مرتبط با درخواست.

درخواست پروکسی
message.version رشته بخوان / بنویس

نسخه HTTP مرتبط با درخواست ارسال شده به ProxyEndpoint از برنامه مشتری.

درخواست پروکسی

برای اطلاعات بیشتر در مورد پیام ها، به مرجع تابع الگوی پیام مراجعه کنید.

messageid

ظرفی برای شناسه منحصر به فرد جهانی درخواست.

جدول زیر ویژگی های متغیر messageid را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
messageid رشته فقط بخوانید

شناسه منحصربه‌فرد جهانی درخواست را که شامل نام میزبان روتر است، نگه می‌دارد. این شناسه اجازه می دهد تا درخواست های دریافت شده در روتر پس از ارسال به پردازشگر پیام ردیابی شوند.

این شناسه در گزارش های خطای Edge ثبت شده است تا messageid با خطاها مرتبط کند.

درخواست پروکسی

organization

ظرفی برای ویژگی organization.name .

جدول زیر ویژگی های متغیر organization را شرح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
organization.name رشته فقط بخوانید

نام سازمان.

درخواست پروکسی

برای اطلاعات بیشتر درباره سازمان‌ها، به درک سازمان‌ها مراجعه کنید.

proxy

پیکربندی پروکسی API.

جدول زیر ویژگی های متغیر proxy را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
proxy.basepath رشته فقط بخوانید

مقدار Base Path در پیکربندی پراکسی API شما. مسیر پایه قطعه URI است که میزبان را در URL دنبال می کند. URI های جریان مشروط مسیر پایه را دنبال می کنند.

در URL "http://myorg-test.apigee.net /v2/weatherapi /forecastrss?w=12797282":

  • میزبان "myorg-test.apigee.net" است (که شامل نام سازمان و محیط است)
  • مسیر پایه "/v2/weatherapi" است

تنها راهی که می توانید متوجه شوید این است که به تعریف پراکسی API یا بررسی مقدار متغیر proxy.basepath مراجعه کنید. پسوند مسیر پراکسی از مسیر پایه ("/forecastrss")، همراه با هر پارامتر پرس و جو پیروی می کند.

اگر یک مسیر پایه پویا را در پیکربندی پراکسی API خود تعریف کنید، مانند "/v2/*/weatherapi"، این متغیر روی مسیر پویا ("/v2/*/weatherapi") تنظیم می شود، حتی اگر مسیر پایه حل شود. به یک مقدار ثابت، مانند "/v2/foo/weatherapi".

درخواست پروکسی
proxy.client.ip رشته فقط بخوانید

آدرس X-Forwarded-For تماس ورودی، که آدرس IP Edge دریافت شده از آخرین دست دادن TCP خارجی است. این می تواند مشتری تماس گیرنده یا متعادل کننده بار باشد.

درخواست پروکسی
proxy.name رشته فقط بخوانید

ویژگی نام پیکربندی شده برای ProxyEndpoint.

درخواست پروکسی
proxy.pathsuffix رشته فقط بخوانید

مقدار پسوند مسیر پایه پروکسی API که از مشتری ارسال شده و در ProxyEndpoint دریافت می شود.

مسیر پایه به عنوان مولفه مسیری تعریف می شود که به طور منحصر به فرد پراکسی API را شناسایی می کند. URL عمومی یک پروکسی API شامل نام سازمان شما، محیطی که پراکسی در آن مستقر است، مسیر پایه، پسوند مسیر پایه و هر پارامتر پرس و جو است.

به عنوان مثال، در یک درخواست به http://myorg-test.apigee.net/v2/weatherapi/forecastrss?w=12797282 ، پسوند مسیر پایه "/forecastrss" است.

درخواست پروکسی
proxy.url رشته فقط بخوانید

URL کامل مرتبط با درخواست پروکسی دریافت شده توسط ProxyEndpoint، از جمله هر پارامتر پرس و جوی موجود را دریافت می کند. اگر پروکسی با <LocalTargetConnection> برای انجام زنجیره پراکسی فراخوانی شود، میزبان URL همیشه localhost خواهد بود.

برای مثالی که URL request با استفاده از میزبان اصلی می سازد، به پیام های درخواست دسترسی مراجعه کنید.

درخواست پروکسی

برای اطلاعات بیشتر در مورد کار با پراکسی های API، به درک API ها و پراکسی های API مراجعه کنید.

request

درخواست کامل، از جمله هرگونه محموله موجود.

برای اطلاعات بیشتر در مورد داده‌های درخواست، به نحوه ارسال داده‌های درخواست به سرور پشتیبان مراجعه کنید؟

جدول زیر ویژگی های متغیر request را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
request message فقط بخوانید

درخواست کامل، از جمله هرگونه محموله موجود.

درخواست پروکسی
request.content رشته بخوان / بنویس

بار پیام درخواست را دریافت یا تنظیم می کند.

درخواست پروکسی
request.formparam. param_name رشته بخوان / بنویس

مقدار پارامتر فرم مشخص شده را در درخواست ارسال شده از برنامه مشتری دریافت یا تنظیم می کند.

درخواست پروکسی
request.formparam. param_name .
values
مجموعه فقط بخوانید

تمام مقادیر یک پارامتر فرم خاص در درخواست، به عنوان یک لیست جدا شده با کاما فرمت شده است.

برای مثال، اگر محموله "a=hello&x=greeting&a=world" باشد، مقدار request.formparam.a.values ​​"['hello', 'world']" است.

درخواست پروکسی
request.formparam. param_name .
values.count
عدد صحیح فقط بخوانید

تعداد تمام مقادیر برای پارامتر فرم مشخص شده مرتبط با درخواست.

درخواست پروکسی
request.formparam. param_name . N رشته بخوان / بنویس

مقدار Nامین پارامتر فرم خاص در پیام. برای مثال، اگر رشته فرم "a=hello&a=world" باشد، مقدار بازگشتی request.formparam.a.1 "hello" است.

درخواست پروکسی
request.formparams.count عدد صحیح فقط بخوانید

تعداد تمام پارامترهای فرم مرتبط با درخواست ارسال شده از برنامه مشتری.

درخواست پروکسی
request.formparams.names مجموعه فقط بخوانید

لیستی از نام تمام پارامترهای فرم مرتبط با درخواست.

درخواست پروکسی
request.formstring رشته فقط بخوانید

formparam کامل در درخواست ارسال شده از برنامه مشتری.

به عنوان مثال، "name=test&type=first&group=A".

درخواست پروکسی
request.header. header_name رشته بخوان / بنویس

مقدار هدر خاصی را که در درخواست یافت می شود، دریافت یا تنظیم می کند. اگر سرصفحه حاوی کاما باشد، پس از خواندن فقط قسمتی از متن را تا اولین کاما دریافت خواهید کرد.

اگر کل هدر را می خواهید، از فرم request.header. header_name .values ​​.

درخواست پروکسی
request.header. header_name . N رشته بخوان / بنویس

مقدار Nامین مقدار هدر خاص در درخواست. Apigee Edge مقادیر متن سرصفحه را با کاما تقسیم می کند. توجه داشته باشید که شاخصی که مقدار آن برای N استفاده می شود، مبتنی بر 1 است، نه بر اساس 0.

برای مثال، اگر هدر Cache-control "public, maxage=16544" باشد، مقدار بازگشتی request.header.cache-control.1 "maxage=16544" است.

درخواست پروکسی
request.header. header_name .
values
مجموعه فقط بخوانید

تمام مقادیر یک هدر خاص در درخواست.

درخواست پروکسی
request.header. header_name .
values.count
عدد صحیح فقط بخوانید

شمارش تمام مقادیر یک هدر خاص در درخواست.

درخواست پروکسی
request.headers.count عدد صحیح فقط بخوانید

تعداد تمام سرصفحه های درخواست.

درخواست پروکسی
request.headers.names مجموعه فقط بخوانید

نام تمام سرصفحه های موجود در درخواست.

درخواست پروکسی
request.path رشته فقط بخوانید

مسیر منبع بدون پروکسی (بدون شامل میزبان) به سرویس پشتیبان، به استثنای پارامترهای پرس و جو.

برای مثال، از URI به سرویس Backend "https://example.com/rest/api/latest" است، سپس مقدار request.path "/rest/api/latest" است.

درخواست پروکسی
request.queryparam. param_name رشته بخوان / بنویس

مقدار یک پارامتر کوئری خاص که در درخواست یافت می شود.

درخواست پروکسی
request.queryparam. param_name . N رشته بخوان / بنویس

مقدار Nامین پارامتر پرس و جو در درخواست.

به عنوان مثال، اگر request.querystring "a=hello&a=world" باشد، مقدار بازگشتی request.queryparam.a.1 "hello" است.

به عنوان مثالی از نوشتن چندین مقدار برای یک نام پارامتر پرس و جو، مانند "type=siteid:1&type=language:us-en&type=currency:USD"، موارد زیر را تنظیم کنید:

  • request.queryparam.type.1 به "siteid:1"
  • request.queryparam.type.2 به "language:en-us"
  • request.queryparam.type.3 به "currency:USD"
درخواست پروکسی
request.queryparam. param_name .
values
مجموعه فقط بخوانید

تمام مقادیر یک پارامتر کوئری خاص در درخواست، به صورت فهرست جدا شده با کاما فرمت شده است.

برای مثال، اگر request.querystring "a=hello&b=lovely&a=world" باشد، مقدار request.queryparam.a.values ​​"['hello', 'world']" است.

درخواست پروکسی
request.queryparam. param_name .
values.count
عدد صحیح فقط بخوانید

تعداد تمام مقادیر یک پارامتر کوئری خاص در درخواست.

درخواست پروکسی
request.queryparams.count عدد صحیح فقط بخوانید

تعداد تمام پارامترهای پرس و جو در درخواست.

درخواست پروکسی
request.queryparams.names مجموعه فقط بخوانید

نام تمام پارامترهای پرس و جو در درخواست.

برای تکرار نام پارامترهای پرس و جو با استفاده از جاوا اسکریپت، ببینید چگونه مجموعه را از "request.queryparams.names" در JS تکرار می کنید؟ در جامعه Apigee .

درخواست پروکسی
request.querystring رشته فقط بخوانید

لیست کامل پارامترهای پرس و جو در درخواست ارسال شده از برنامه مشتری.

برای مثال، اگر درخواست "http://host.com/123?name=first&surname=second&place=address" باشد، این متغیر "name=first&surname=second&place=address" را برمی‌گرداند.

درخواست پروکسی
request.transportid رشته فقط بخوانید

شناسه درخواست به عنوان نوع TransportMessage که یک شی متنی است.

درخواست پروکسی
request.transport.message حمل و نقل - پیام فقط بخوانید

درخواست از نوع TransportMessage که یک شی متنی است.

درخواست پروکسی
request.uri رشته فقط بخوانید

در یک پراکسی API، پراکسی <BasePath> در ProxyEndpoint (علاوه بر URL پایه پروکسی) به URL سرویس هدف در TargetEndpoint نگاشت می شود. به عنوان مثال:

<ProxyEndpoint>
...
<BasePath>/my-mock-proxy</BasePath>

به

<TargetEndpoint>
...
<HTTPTargetConnection>
http://mocktarget.apigee.net
</HTTPTargetConnection>

در درخواست ، request.uri مسیر پایه پروکسی + باقیمانده آدرس، از جمله پارامترهای پرس و جو است.

در پاسخ ، request.uri باقیمانده آدرس، شامل پارامترهای پرس و جو، بعد از HTTPTargetConnection است.

تفاوت به این دلیل است که درخواست اصلی وارد پروکسی شده است، اما پس از آن، پروکسی درخواست دیگری را به سرویس هدف ارسال می کند.

فرض کنید فراخوانی زیر با پراکسی نمونه ما انجام شده است که مسیر اصلی "/my-mock-proxy" دارد:

http://my_org-test.apigee.net/my-mock-proxy/ user?user=Dude

و پروکسی تماس می گیرد:

http://mocktarget.apigee.net

که "/user?user=Dude" را به آن URL اضافه می کند.

  • درخواست: request.uri = "/my-mock-proxy/user?user=Dude"
  • پاسخ: request.uri = "/user?user=Dude"
درخواست پروکسی (در پاسخ متفاوت است)
request.url رشته فقط بخوانید

URL کامل درخواست ارسال شده به نقطه پایانی هدف، شامل پارامترهای رشته پرس و جو، اما شامل شماره پورت (اگر مشخص شده باشد).

برای مثال، اگر با یک پراکسی نمونه تماس بگیرید «http://my_org-test.apigee.net/my-mock-proxy/user?user=Dude»، و نقطه پایانی هدف «http://example» است. com:8080"، سپس مقدار:

  • درخواست: n/a
  • پاسخ: "http://example.com/user?user=Dude"
پاسخ هدف
request.verb رشته فقط بخوانید

فعل HTTP که برای درخواست استفاده می شود. به عنوان مثال، "GET"، "PUT" و "DELETE".

درخواست پروکسی
request.version رشته فقط بخوانید

نسخه HTTP درخواست. به عنوان مثال، "1.1".

درخواست پروکسی

response

پاسخ کامل، از جمله هر محموله موجود.

جدول زیر ویژگی های متغیر response را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
response message بخوان / بنویس

پیام پاسخ کامل توسط هدف برگردانده شده است.

پاسخ هدف
response.content رشته بخوان / بنویس

محتوای بار پیام پاسخ بازگردانده شده توسط هدف.

پاسخ هدف
response.formparam. param_name رشته بخوان / بنویس

مقدار یک پارامتر فرم در پاسخ.

پاسخ هدف
response.formparam. param_name .
values.count
عدد صحیح فقط بخوانید

شمارش تمام مقادیر پارامتر فرم مشخص شده در پاسخ.

پاسخ هدف
response.formparams.count عدد صحیح فقط بخوانید

شمارش تمام پارامترهای فرم در پاسخ.

پاسخ هدف
response.formparams.names مجموعه فقط بخوانید

نام تمام پارامترهای فرم در پاسخ.

پاسخ هدف
response.header. header_name رشته بخوان / بنویس

مقدار یک هدر HTTP مشخص شده را در پاسخ دریافت یا تنظیم می کند.

اگر متن سرصفحه دارای کاما باشد، Apigee Edge چندین مقدار را استنتاج می کند. در این مورد، response.header. header_name فقط اولین مقدار را برمی گرداند.

برای خواندن کل هدر، از فرم response.header. header_name .values ​​.

پاسخ هدف
response.header. header_name .
values
مجموعه فقط بخوانید

تمام مقادیر یک هدر HTTP مشخص شده در پاسخ.

پاسخ هدف
response.header. header_name .
values.count
عدد صحیح فقط بخوانید

شمارش تمام مقادیر هدر HTTP مشخص شده در پاسخ.

پاسخ هدف
response.header. header_name . N رشته بخوان / بنویس

مقدار Nامین مقدار سرصفحه خاص در پاسخ. Apigee Edge مقادیر متن سرصفحه را با کاما تقسیم می کند. توجه داشته باشید که شاخصی که مقدار آن برای N استفاده می شود، مبتنی بر 1 است، نه بر اساس 0.

برای مثال، اگر هدر Cache-control "public, maxage=16544" باشد، response.header.cache-control.1 "maxage=16544" را برمی‌گرداند.

پاسخ هدف
response.headers.count عدد صحیح فقط بخوانید

تعداد تمام سرصفحه ها در پاسخ.

پاسخ هدف
response.headers.names مجموعه فقط بخوانید

نام تمام سرفصل های موجود در پاسخ.

پاسخ هدف
response.reason.phrase رشته بخوان / بنویس

عبارت دلیل پاسخ برای یک درخواست خاص.

پاسخ هدف
response.status.code عدد صحیح بخوان / بنویس

کد پاسخ برای یک درخواست برگشت داده شد. می توانید از این متغیر برای لغو کد وضعیت پاسخ که در message.status.code ذخیره می شود استفاده کنید. برای اطلاعات بیشتر به message مراجعه کنید.

پاسخ هدف
response.transport.message رشته فقط بخوانید

پاسخ از نوع TransportMessage که یک شیء متنی است.

پاسخ هدف

route

نام <RouteRule> و TargetEndpoint را مشخص می کند.

جدول زیر ویژگی های متغیر route را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
route.name رشته فقط بخوانید

نام <RouteRule> که در ProxyEndpoint اجرا شد. به عنوان مثال، "پیش فرض". یک RouteRule به یک پروکسی API TargetEndpoint برای اجرا ارجاع می دهد.

درخواست هدف
route.target رشته فقط بخوانید

نام TargetEndpoint که اجرا شد. به عنوان مثال، "پیش فرض".

درخواست هدف

router

ظرفی برای ویژگی router.uuid که منسوخ شده است.

جدول زیر ویژگی های متغیر router را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه شروع می شود
router.uuid رشته فقط بخوانید

منسوخ شده و null را برمی گرداند. (قبلاً UUID روتر که پروکسی را مدیریت می کند.)

درخواست پروکسی

servicecallout

TargetEndpoint را برای یک خط مشی ServiceCallout شرح می دهد.

جدول زیر ویژگی های متغیر servicecallout را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
servicecallout. policy_name .expectedcn رشته بخوان / بنویس

نام مشترک مورد انتظار TargetEndpoint همانطور که در خط مشی ServiceCallout به آن اشاره شده است. این تنها زمانی معنادار است که TargetEndpoint به یک نقطه پایانی TLS/SSL اشاره کند.

درخواست پروکسی
servicecallout. policy_name .target.url رشته بخوان / بنویس

URL TargetEndpoint برای یک خط مشی ServiceCallout خاص.

درخواست پروکسی
servicecallout.requesturi رشته بخوان / بنویس

URI TargetEndpoint برای خط مشی ServiceCallout . URI URL TargetEndpoint بدون مشخصات پروتکل و دامنه است.

درخواست پروکسی

system

آدرس IP سیستم و همچنین جزئیات مربوط به پروکسی را مشخص می کند.

جدول زیر ویژگی های متغیر system را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه آغاز می شود
system.interface. interface_name رشته فقط بخوانید

آدرس IP سیستم

درخواست پروکسی
system.pod.name رشته فقط بخوانید

نام غلافی که پراکسی در آن اجرا می شود.

درخواست پروکسی
system.region.name رشته فقط بخوانید

نام منطقه مرکز داده که در آن پراکسی در حال اجرا است.

درخواست پروکسی
system.time رشته فقط بخوانید

زمانی که این متغیر خوانده شد. به عنوان مثال، "Wed, 21 Aug 2013 19:16:47 UTC".

این مقدار نمایش رشته ای از مقدار متناظر system.timestamp است. برای مثال، "Wed, 21 Aug 2013 19:16:47 UTC" با مقدار مهر زمانی "1377112607413" مطابقت دارد.

درخواست پروکسی
system.time.year عدد صحیح فقط بخوانید

بخش سال از system.time .

درخواست پروکسی
system.time.month عدد صحیح فقط بخوانید

بخش ماه system.time .

درخواست پروکسی
system.time.day عدد صحیح فقط بخوانید

قسمت روز ماه از system.time .

درخواست پروکسی
system.time.dayofweek عدد صحیح فقط بخوانید

قسمت روز هفته از system.time .

درخواست پروکسی
system.time.hour عدد صحیح فقط بخوانید

بخش ساعتی system.time .

درخواست پروکسی
system.time.minute عدد صحیح فقط بخوانید

بخش دقیقه از system.time .

درخواست پروکسی
system.time.second عدد صحیح فقط بخوانید

قسمت دوم system.time .

درخواست پروکسی
system.time.millisecond عدد صحیح فقط بخوانید

بخش میلی ثانیه ای system.time .

درخواست پروکسی
system.time.zone رشته فقط بخوانید

منطقه زمانی سیستم

درخواست پروکسی
system.timestamp طولانی فقط بخوانید

عدد صحیح 64 بیتی (طولانی) نشان دهنده زمان خواندن این متغیر است. مقدار، تعداد میلی ثانیه های سپری شده از نیمه شب، در 1 ژانویه 1970 UTC است. به عنوان مثال، "1534783015000".

درخواست پروکسی
system.uuid رشته فقط بخوانید

UUID پردازشگر پیام که پروکسی را مدیریت می کند.

درخواست پروکسی

target

هدف درخواست را شرح می دهد.

جدول زیر ویژگی های متغیر target را توضیح می دهد:

اموال تایپ کنید بخوان / بنویس توضیحات دامنه شروع می شود
target.basepath رشته فقط بخوانید

مسیر منبع (بدون شامل دامنه) به سرویس هدف، به استثنای پارامترهای پرس و جو، که در TargetEndpoint پروکسی تعریف شده است.

به عنوان مثال، فرض کنید یک پروکسی API هدف زیر را فراخوانی می کند:

<TargetEndpoint name="default">
...
<HTTPTargetConnection>
<URL>http://mocktarget.apigee.net/user?user=Dude</URL>
</HTTPTargetConnection>

در این مثال، target.basepath "/user" است.

اگر هدف این بود:

<TargetEndpoint name="default">
...
<HTTPTargetConnection>
<URL>http://mocktarget.apigee.net</URL>
</HTTPTargetConnection>

target.basepath صفر خواهد بود.

درخواست هدف
target.copy.pathsuffix بولی بخوان / بنویس

هنگامی که "درست" است، درخواست ارسال شده از ProxyEndpoint به TargetEndpoint پسوند مسیر را حفظ می کند (قطعه مسیر URI به دنبال URI تعریف شده در مسیر پایه ProxyEndpoint).

درخواست هدف
target.copy.queryparams بولی بخوان / بنویس

هنگامی که "درست" است، درخواست ارسال شده از ProxyEndpoint به TargetEndpoint پارامترهای پرس و جو را حفظ می کند.

درخواست هدف
target.country رشته فقط بخوانید

کشور گواهی TLS/SSL ارائه شده توسط سرور مورد نظر

پاسخ هدف
target.cn رشته فقط بخوانید

نام مشترک TargetEndpoint. این تنها زمانی معنادار است که TargetEndpoint به یک نقطه پایانی TLS/SSL اشاره کند.

درخواست هدف
target.email.address رشته فقط بخوانید

آدرس ایمیل گواهی TLS/SSL ارائه شده توسط سرور مورد نظر

پاسخ هدف
target.expectedcn رشته بخوان / بنویس

نام مشترک مورد انتظار TargetEndpoint. این تنها زمانی معنادار است که TargetEndpoint به یک نقطه پایانی TLS/SSL اشاره کند.

درخواست پروکسی
target.host رشته فقط بخوانید

نام دامنه سرویس مورد نظر که پاسخ را به پروکسی API برمی گرداند.

پاسخ هدف
target.ip رشته فقط بخوانید

آدرس IP سرویس مورد نظر که پاسخ را به پراکسی API برمی گرداند.

پاسخ هدف
target.locality رشته فقط بخوانید

محل (شهر) گواهی TLS/SSL ارائه شده توسط سرور مورد نظر

پاسخ هدف
target.name رشته فقط بخوانید

هدفی که پیام از نقطه پایانی به آن می رسد.

درخواست هدف
target.organization رشته فقط بخوانید

سازمان گواهی TLS/SSL ارائه شده توسط سرور هدف.

پاسخ هدف
target.organization.unit رشته فقط بخوانید

واحد سازمان گواهی TLS/SSL ارائه شده توسط سرور هدف.

پاسخ هدف
target.port عدد صحیح فقط بخوانید

شماره پورت سرویس هدف بازگرداندن پاسخ به پروکسی API.

پاسخ هدف
target.received.end.time رشته فقط بخوانید

زمان ، بیان شده به صورت رشته ، که در آن TargetEndPoint دریافت پاسخ از هدف را به پایان رساند. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC".

این مقدار زمان بازنمایی رشته از مقدار زمانی 32 بیتی مربوطه است. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC" با ارزش زمان بندی "1377112607413" مطابقت دارد.

پاسخ هدف
target.received.end.
timestamp
طولانی فقط بخوانید

مقدار Timestamp مشخص می کند که زمان TargetEndPoint دریافت پاسخ از هدف را به پایان رساند. به عنوان مثال ، "1534783015000". این مقدار یک عدد صحیح 64 بیتی (طولانی) است که تعداد میلی ثانیه از نیمه شب ، در اول ژانویه 1970 UTC را نشان می دهد.

پاسخ هدف
target.received.start.time رشته فقط بخوانید

زمان ، بیان شده به شکل رشته ، که در آن TargetEndPoint شروع به دریافت پاسخ از هدف کرد. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC".

این مقدار زمان بازنمایی رشته از مقدار زمانی 32 بیتی مربوطه است. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC" با ارزش زمان بندی "1377112607413" مطابقت دارد.

پاسخ هدف
target.received.start.
timestamp
طولانی فقط بخوانید

مقدار Timestamp مشخص می کند که زمان TargetEndPoint شروع به دریافت پاسخ از هدف کرد. به عنوان مثال ، "1534783015000". این مقدار یک عدد صحیح 64 بیتی (طولانی) است که تعداد میلی ثانیه از نیمه شب ، در اول ژانویه 1970 UTC را نشان می دهد.

پاسخ هدف
target.scheme رشته فقط بخوانید

دامنه آغاز می شود : پاسخ هدف
نوع : رشته
مجوز : بخوانید/بنویسید

بسته به پیام درخواست ، http یا https را برمی گرداند.

درخواست هدف
target.sent.end.time رشته فقط بخوانید

زمان ، بیان شده به صورت رشته ، که در آن پروکسی ارسال درخواست به URL مشخص شده در TargetEndpoint را متوقف کرد. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC".

این مقدار زمان بازنمایی رشته از مقدار زمانی 32 بیتی مربوطه است. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC" با ارزش زمان بندی "1377112607413" مطابقت دارد.

درخواست هدف
target.sent.end.timestamp طولانی فقط بخوانید

مقدار Timestamp مشخص می کند که پروکسی ارسال درخواست به URL مشخص شده در TargetEndPoint را به پایان رساند. به عنوان مثال ، "1377112607413". این مقدار یک عدد صحیح 64 بیتی (طولانی) است که حاوی تعداد میلی ثانیه از نیمه شب ، در اول ژانویه 1970 UTC است.

درخواست هدف
target.sent.start.time رشته فقط بخوانید

زمان بیان شده به صورت رشته ای ، که در آن پروکسی شروع به ارسال درخواست به URL مشخص شده در TargetEndPoint کرد. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC".

این مقدار زمان بازنمایی رشته از مقدار زمانی 32 بیتی مربوطه است. به عنوان مثال ، "چهارشنبه ، 21 اوت 2013 19:16:47 UTC" با ارزش زمان بندی "1377112607413" مطابقت دارد.

درخواست هدف
target.sent.start.timestamp طولانی فقط بخوانید

مقدار Timestamp مشخص می کند که پروکسی شروع به ارسال درخواست به URL مشخص شده در TargetEndPoint کرد. به عنوان مثال ، "1534783015000". این مقدار یک عدد صحیح 64 بیتی (طولانی) است که تعداد میلی ثانیه از نیمه شب ، در اول ژانویه 1970 UTC را نشان می دهد.

درخواست هدف
target.ssl.enabled بولی فقط بخوانید

آیا TargetEndPoint روی TLS/SSL کار می کند.

درخواست پروکسی
target.state رشته فقط بخوانید

وضعیت گواهی TLS/SSL ارائه شده توسط سرور هدف.

پاسخ هدف
target.url رشته بخوانید/بنویسید

URL پیکربندی شده در پرونده XML TargetEndPoint یا URL هدف پویا (اگر target.url در طول جریان پیام تنظیم شده است). متغیر شامل هیچ عناصر مسیر اضافی یا پارامترهای پرس و جو نیست. اگر از دامنه خارج شود یا در غیر این صورت غیرقانونی باشد ، تهی را برمی گرداند.

درخواست هدف

variable

یک ظرف برای ویژگی variable.expectedcn . expectedCn.

جدول زیر خصوصیات variable را شرح می دهد:

اموال تایپ کنید بخوانید/بنویسید توضیحات دامنه شروع می شود
variable.expectedcn رشته بخوانید/بنویسید

متغیر در صورت اجرای TLS/SSL برای نام مشترک در معرض دید قرار می گیرد.

درخواست پروکسی

برای کسب اطلاعات بیشتر در مورد کار با TLS ، به مقدمه TLS/SSL مراجعه کنید.

virtualhost

جزئیات مربوط به میزبان مجازی را مشخص می کند.

جدول زیر خصوصیات متغیر virtualhost را شرح می دهد:

اموال تایپ کنید بخوانید/بنویسید توضیحات دامنه شروع می شود
virtualhost.aliases.values مجموعه ای از رشته ها فقط بخوانید

نام مستعار میزبان میزبان مجازی که در طی یک درخواست خاص مورد اصابت قرار می گیرد.

درخواست پروکسی
virtualhost.name رشته فقط بخوانید

نام میزبان مجازی که در خدمت درخواست مشتری اصلی است.

درخواست پروکسی
virtualhost.ssl.enabled بولی فقط بخوانید

اگر TLS/SSL در پیکربندی میزبان مجازی فعال باشد ، "درست" را برمی گرداند.

درخواست پروکسی

برای اطلاعات بیشتر در مورد کار با میزبان های مجازی ، به پیکربندی میزبان های مجازی مراجعه کنید.