ফিল্টার প্যারামিটারগুলি জিওএসবারের ডাব্লুএফএসে ইউআরএল দিয়ে পাঠাচ্ছেন?


17

আমি জিও সার্ভার উদাহরণ থেকে জিওজেএসএন তথ্য আনতে পিএইচপি এর সিআরএল ফাংশনটি ব্যবহার করার চেষ্টা করছি। আমি একটি সম্পূর্ণ এক্সএমএল গেটফিজার অনুরোধটি নির্মাণের চেষ্টা করার চেয়ে url ভেরিয়েবলগুলি ব্যবহার করে এটি করছি।

তবে আমি সম্পত্তি ক্ষেত্রের কিছু সামগ্রীর উপর ভিত্তি করে ফলাফলগুলির একটি উপসেট পেতে সক্ষম হতে চাই।

সুতরাং, আমি এই url ব্যবহার করে সমস্ত ফলাফল পেতে পারি:

http://www.myURL.com/geoserver/namespace/ows?service=WFS&version=1.0.0&request=GetFeature&typeName=layername&outputFormat=json&BBOX=1,2,3,4

আমি কি ফলাফলগুলিকে "যেখানে ক্ষেত্রের মতো পছন্দ" বা "ক্ষেত্র = মান" সীমাবদ্ধ করতে পারি?

আমি জিওসিভার / ইসিকিউএল ডকুমেন্টেশনের মাধ্যমে একটি ঘন্টা ট্রলিংয়ে কাটিয়েছি এবং এর মধ্যে কোনওটিই স্পষ্টভাবে "এই ফর্ম্যাটে আপনার ইউআরএলে ফাংশনগুলি সংযোজন" করতে পারে নি। ফলস্বরূপ, এই কাজগুলি সম্পাদন করার জন্য ইউআরএল ভেরিয়েবলগুলি ব্যবহার করা সম্ভব কিনা তা আমি স্পষ্ট নই, তবে কিছু লোক মনে হয় এটি এটি।

জিও সার্ভারের ডাব্লুএফএস ব্যবহার করে ইউআরএল প্যারামিটারের সাহায্যে কোনও কার্যকর ফিল্টারের সুস্পষ্ট উদাহরণে কেউ সহায়তা করতে পারেন?

উত্তর:


25

আমি মনে করি আপনি এই http://docs.geoserver.org/latest/en/user/tutorials/cql/cql_tutorial.html পড়ছেন

এখানে কিছু নমুনা অনুরোধ এসেছে যা বাউন্ডলেস ডেমো সার্ভারের জন্য কোয়েরি পাঠাচ্ছে তবে আপনার নিজের সার্ভারের সাথে একইভাবে কাজ করা উচিত যদি আপনার ডেমো লেয়ার টপ থাকে: স্টেট ইনস্টল থাকে।

STATE_NAME ইলিনয় যেখানে নির্বাচন করুন

http://demo.opengeo.org/geoserver/wfs?service=wfs&version=1.0.0&request=getfeature&typename=topp:states&PROPERTYNAME=STATE_NAME&CQL_FILTER=STATE_NAME='Illinois'

এখানে স্ট্যান্ডার্ড ডাব্লুএফএস প্যারামিটার PROPERTYNAME এর ব্যবহার লক্ষ্য করুন যা আউটপুট সংক্ষিপ্ত করার জন্য এখানে ব্যবহৃত হয়। আপনি সমস্ত অ্যাট্রিবিউট চান, বা কিছু গুণাবলী নির্বাচন করার জন্য একটি তালিকা লিখুন যদি ছেড়ে দিন।

তারপরে "আমি" দিয়ে শুরু হওয়া নাম নির্বাচন করুন

http://demo.opengeo.org/geoserver/wfs?service=wfs&version=1.0.0&request=getfeature&typename=topp:states&PROPERTYNAME=STATE_NAME&CQL_FILTER=STATE_NAME LIKE 'I%25'

লক্ষ্য করুন যে তুলনা স্ট্রিংটি 'I%' তবে কমপক্ষে আমার ব্রাউজারের সাথে (ফায়ারফক্স ৩১.০) এটি অবশ্যই ইউআরএল-এনকোড হওয়া উচিত এবং এটি 'আই% 25' আসে। এটি সিসকিউএল টিউটোরিয়ালে উল্লেখ করা হয়নি। যদি আপনার নিজের ফিল্টার ব্যর্থ হয় তবে এর অর্থ এই হতে পারে যে আপনাকে অবশ্যই আপনার ফিল্টারটিতে অন্য কিছু অক্ষর ইউআরএল-এনকোড করতে হবে।

আপনার যদি জিওজসনের অ্যাড এবং আউটপুটফর্ম্যাট = অ্যাপ্লিকেশন / জেসন প্রয়োজন হয়

http://demo.opengeo.org/geoserver/wfs?service=wfs&version=1.0.0&request=getfeature&typename=topp:states&PROPERTYNAME=STATE_NAME&CQL_FILTER=STATE_NAME LIKE 'I%25'&outputformat=application/json

10
অন্য যে কারও সাথে এটির জন্য লড়াই করছেন, আপনি ফর্ম্যাটটি ব্যবহার করে ইউআরএলে একাধিক সিসিকিএল ফিল্টার যুক্ত করতে পারেন &CQL_FILTER=field=value AND field=value AND field=value- তবে আপনাকে "এবং" ইউআরএলটি এনকোড করতে হবে যাতে ফাঁকা স্থানগুলি এনকোড থাকে। আশা করি এটি অন্য কারও সময় বাঁচাতে সহায়তা করবে।
অ্যাম্বুলার

খুব দরকারী উত্তর, জিওসিভার টিউটোরিয়াল কেবলমাত্র এতগুলি জিনিস ফেলে দেয়। এক্সওয়াই স্থানাঙ্ক রয়েছে এমন বৈশিষ্ট্যটি ফিরিয়ে দিতে আপনি কীভাবে ক্যোয়ারীটি প্রসারিত করবেন? বা একটি বাউন্ডিং বাক্সের ভিতরে সমস্ত বৈশিষ্ট্য?
লুফডুড
আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.