HTTP স্থিতি কোড 0 - ত্রুটি ডোমেন = NSURLErrorDomain?


94

আমি একটি আইওএস প্রকল্পে কাজ করছি।

এই অ্যাপ্লিকেশনটিতে, আমি সার্ভার থেকে চিত্রগুলি ডাউনলোড করছি।

সমস্যা:

চিত্রগুলি ডাউনলোড করার সময় আমি অনুরোধের সময়সীমা পেয়ে যাচ্ছি । ডকুমেন্টেশন অনুসারে এইচটিটিপি স্থিতির কোডের অনুরোধের সময়সীমা শেষ 408

তবে আমার অ্যাপ্লিকেশনটিতে, আমি 0নিম্নলিখিত ত্রুটি সহ HTTP স্থিতির কোড পাচ্ছি getting

ত্রুটি ডোমেন = NSURLErrorDomain কোড = -1001 "অনুরোধের সময়সীমা শেষ হয়েছে।" ইউজারআইএনফো = 0xb9af710 {এনএসইররফেলিং URL স্ট্রিংকি = http://xxxx.com/resources/p/PNG/1383906967_5621_63.jpg , এনএসইররফেইলিং URLKey = http://xxxx.com/resferences/p/PNG/1383906967_5621_63 সময়সূচী, আবেদনের তালিকা ।, এনএসউন্ডারিলিংয়েরর = 0x13846870 "অনুরোধের সময়সীমা শেষ হয়েছে" "

ইন্টারনেটে অনুসন্ধানের সময়, আমি HTTP স্থিতি কোড 0 সম্পর্কিত কোনও তথ্য পাইনি।

কেউ আমাকে এই ব্যাখ্যা করতে পারেন?


4
মিক্সড কন্টেন্ট ডেভেলপার.মোজিলা.আর.ইন
ইউএস

উত্তর:


98

কোনও HTTP স্থিতি কোড নেই 0. আপনি যা দেখছেন তা হল 0 ব্যবহার করছেন এমন API / লাইব্রেরি যা আপনি ব্যবহার করছেন। এজন্য আপনাকে ডকুমেন্টেশন চেক করতে হবে।


7
আইই 10 এর একটি অদ্ভুত ত্রুটি রয়েছে, যখন স্থিতি কোড 401 বা 403 গ্রহণ করার সময়, এটি এটি স্ট্যাটাস কোড 0 হিসাবে ব্যাখ্যা করে my
গৌই

5
গেট উপায় সময়সীমার, আপনার HTTP ত্রুটি কল করার পিছনে 0 মর্যাদা পাবেন angulartutorial.net/2017/03/http-status-codes-and-meanings.html
Prashobh

উত্তরটি ভুল। ব্রাউজার সার্ভারের সাথে সংযোগ করতে না পারলে স্থিতি কোড 0 উপস্থিত থাকে। আপনি যেমন 504 এর মতো বিভিন্ন ত্রুটি পেয়ে থাকেন তবে এটি বিপরীত প্রক্সি সেটিংসের কারণে ঘটে।
নিকন

উত্তরটি সঠিক। কোনও HTTP স্থিতি কোড নেই 0. আপনি এটি কোনও এপিআই থেকে রিটার্ন মান হিসাবে দেখতে পাবেন তবে এটি কোনও HTTP প্রতিক্রিয়া বার্তার অভ্যন্তরে ঘটবে না।
জুলিয়ান পুনরায় 16

76

কোনও NSHTTPURLResponseবস্তুর 0 এর স্থিতি কোডের অর্থ সাধারণত কোনও প্রতিক্রিয়া ছিল না এবং বিভিন্ন কারণে ঘটতে পারে occur সার্ভারটি কখনই 0 এর স্থিতি ফিরিয়ে আনবে না কারণ এটি কোনও বৈধ HTTP স্থিতি কোড নয়।

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

মনে রাখবেন যে, ক্ষেত্রে যেখানে স্থিতি কোড 0 মধ্যে, বাস্তব ত্রুটি ফিরিয়ে বন্দী করা হয় NSErrorবস্তু, না NSHTTPURLResponse

408আমার অভিজ্ঞতায় এইচটিটিপি স্থিতি বেশ অস্বাভাবিক। আমি নিজে কখনও একজনের মুখোমুখি হইনি। তবে এটি স্পষ্টতই এমন ক্ষেত্রে ব্যবহৃত হয় যেখানে ক্লায়েন্টটির সার্ভারের সাথে সক্রিয় সকেট সংযোগ বজায় রাখা প্রয়োজন হয় এবং সার্ভারটি ক্লায়েন্টের জন্য উন্মুক্ত সকেটে আরও ডেটা প্রেরণের জন্য অপেক্ষা করে থাকে, তবে এটি একটি নির্দিষ্ট পরিমাণ সময় দেয় না এবং সার্ভারটি 408স্থিতি কোডের সাথে সংযোগটি শেষ করে ক্লায়েন্টকে "আপনি অনেক বেশি সময় নিয়েছিলেন" বলে জানিয়েছিলেন।


4
নিখুঁত ব্যাখ্যা।
কাউচডেভোপার

10

সাড়া খালি ছিল। বেশিরভাগ ক্ষেত্রে কোডগুলি 1xx, 2XX, 3xx, 4xx, 5xx এর সাথে পরিসংখ্যান করবে।

এইচটিটিপি স্থিতি কোডগুলির তালিকা


আপনার প্রদত্ত লিঙ্কে HTTP স্থিতি কোড 0 সম্পর্কিত কোনও তথ্য নেই
Ir


5

আমার সীমিত অভিজ্ঞতা থেকে, আমি বলব যে নিম্নলিখিত দুটি দৃশ্যের প্রতিক্রিয়া হতে পারে status code: 0, মনে রাখবেন; তাদের আরও হতে পারে, কিন্তু আমি এই দুটি সম্পর্কে জানি:

  • আপনার সংযোগ হতে পারে ধীরে ধীরে সাড়া।
  • অথবা সম্ভবত ব্যাক-এন্ড সার্ভার উপলব্ধ নেই।

বিষয়টি হ'ল status: 0সামান্য জেনেরিক এবং এগুলি আরও ব্যবহারের ক্ষেত্রে হতে পারে যা খালি প্রতিক্রিয়ার বডি তৈরি করে।


এটি একটি এপিআই স্ট্যাটাস, কোনও HTTP স্থিতি নয়। যদি কোনও HTTP প্রতিক্রিয়া না থাকে তবে এতে কোনও HTTP স্থিতি কোড ছিল না।
13:01

স্থিতি কোড 0 এর অর্থ এই নয় যে এইচটিটিপি রেসপন্স কোড রয়েছে তবে আপনার সার্ভার উপলব্ধ না থাকলে সমস্যা হতে পারে।
রবি

5

স্থিতি কোড '0' তিনটি কারণে ঘটতে পারে
1) ক্লায়েন্ট সার্ভারের সাথে সংযোগ করতে পারে না
2) ক্লায়েন্ট সময়সীমার মধ্যে প্রতিক্রিয়া পেতে পারে না The) ক্লায়েন্ট
কর্তৃক অনুরোধটি "বন্ধ (বাতিল)" করা হয়েছিল।

তবে এই তিনটি কারণ মানসম্মত নয়


আপনার কি কোনও উত্স আছে?
rgoliveira

যে কোনও উত্স কোড প্রথম দুটি পয়েন্ট পরীক্ষার জন্য প্রযোজ্য, আপনার কেবল একটি এজ্যাক্স ভিত্তিক অনুরোধ প্রয়োজন। তবে তৃতীয়টি ব্যবহারকারীর অনুরোধ বাতিল করার ক্ষেত্রে ঘটছে, এটি jquery এ abort ফাংশন দ্বারা করা যেতে পারে।
হরিপ্রসত যাদব

4

HTTP প্রতিক্রিয়া 0 মানক HTTP প্রতিক্রিয়া নয়। তবে এটি ইঙ্গিত দেয় যে ক্লায়েন্ট সার্ভারের সাথে সংযোগ করতে পারেনি এবং তাই সময় শেষ হয়ে যায়।


2

আমরা ত্রুটি পেয়েছি:

GET http: //localhost/pathToWebSite/somePage.aspx একটি http.status উত্থাপন করেছে: 0 ত্রুটি

উইন্ডোজ টাস্ক থেকে সেই কলটি করা হয়েছিল যা কোনও ভিবিএস ফাইলকে কল করে, তাই সমস্যা সমাধানের জন্য, ব্রাউজারটিকে ইউআরএল নির্দেশ করে এবং আমরা একটি গোপনীয়তা ত্রুটি পেয়েছি:

আপনার সংযোগটি ব্যক্তিগত নয়

আক্রমণকারীরা স্থানীয় তথ্য আপনার উদাহরণ চুরি করার চেষ্টা করছে (উদাহরণস্বরূপ, পাসওয়ার্ড, বার্তা, বা ক্রেডিট কার্ড)। নেট :: ERR_CERT_COMMON_NAME_INVALID

গুগলে সম্ভাব্য সুরক্ষা ঘটনার বিবরণ স্বয়ংক্রিয়ভাবে প্রতিবেদন করুন। গোপনীয়তা নীতি সুরক্ষায় ফিরে এই সার্ভারটি প্রমাণ করতে পারেনি যে এটি লোকালহোস্ট; এর সুরক্ষা শংসাপত্রটি * .ourdomain.com থেকে। এটি কোনও ভুল কনফিগারেশনের কারণে বা কোনও আক্রমণকারী আপনার সংযোগটিকে বাধা দিতে পারে। আরও জানুন।

কারণ আমাদের আইআইএস ইউআরএল পুনর্লিখনের নিয়মটি সংযোগগুলি https ব্যবহার করতে বাধ্য করার জন্য সেট করে। নিয়ম বিচ্যুত করে HTTP: // স্থানীয় হোস্ট করার জন্য HTTPS: // স্থানীয় হোস্ট কিন্তু আমাদের SSL সার্টিফিকেট বাইরে মুখোমুখি ডোমেইন নামের উপর ভিত্তি করে নয় স্থানীয় হোস্ট, এইভাবে ত্রুটি ঘটেছে, যা স্থিতি কোড 0. হিসাবে রিপোর্ট করা হয় সুতরাং একটি গোপনীয়তা ত্রুটি একটি খুব অস্পষ্ট কারণ হতে পারে হয় এই স্থিতি কোড 0 এর জন্য।

আমাদের ক্ষেত্রে সমাধানটি ছিল লোকালহোস্টের নিয়মটিতে একটি ব্যতিক্রম যুক্ত করা এবং http: //localhost/pathToWebSite/somePage.aspx কে http ব্যবহার করার অনুমতি দেওয়া । অস্পষ্ট, হ্যাঁ, তবে আমি এই পরের বছরে প্রবেশ করব এবং এখন আমি আমার উত্তর গুগল অনুসন্ধানে খুঁজে পাব।


2

কখনও কখনও ব্রাউজারটি ত্রুটি অবজেক্ট সহ HTTP ত্রুটি হ্যান্ডলারের প্রতিক্রিয়া জানায়, স্থিতিটি 0 তে সেট করা থাকে, এমনকি আপনি যদি নেটওয়ার্কে 404, 401, 500 ইত্যাদি ত্রুটি স্থিতি দেখতে পারেন।

এটি হতে পারে যদি আপনার অ্যাপ্লিকেশন এবং এপিআই বিভিন্ন ডোমেনে থাকে - সিওআরএস প্রক্রিয়া প্রয়োগ করা হয়। প্রতিটি API এর জন্য CORS অনুযায়ী অনুরোধ ব্রাউজার দুটি অনুরোধ প্রেরণ করে:

  1. প্রিফলাইট অপশনগুলি বুঝতে অনুরোধ করা হয়েছে যদি API বাস্তব / উত্সের অনুরোধটি অনুমোদন করে।
  2. যখন API অনুমতি দেয় (ওপটিআইওএস অনুরোধের স্থিতি 204 এবং সঠিক অ্যাক্সেস-নিয়ন্ত্রণ-মঞ্জুরি-উত্স শিরোনামের সাথে প্রতিক্রিয়া জানায়) - ব্রাউজারটি পরবর্তী "প্রকৃত / মূল অনুরোধ" প্রেরণ করে।

অ্যাপ্লিকেশনটিতে আমরা "প্রকৃত / উত্সাহ অনুরোধ" এর জন্য ত্রুটি প্রতিক্রিয়া পরিচালনা করছি, এবং যদি "প্রিফলাইট বিকল্পগুলি অনুরোধ" ব্যর্থ হয় - ব্রাউজারটি HTTP ত্রুটি হ্যান্ডলারের জন্য সঠিক এইচটিটিপিআরর অবজেক্ট দেয় না। সুতরাং HTTP প্রতিক্রিয়াটির সঠিক স্থিতি পেতে - সাফল্যের জন্য প্রিফলাইট অপশন অনুরোধের প্রতিক্রিয়া নিশ্চিত করতে ভুলবেন না।




আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.