ক্রস-অরিজিন রিড ব্লকিং (সিওআরবি)


130

আমি জ্যাকুরি এজেএক্স ব্যবহার করে তৃতীয় পক্ষের এপিআই কল করেছি। কনসোলে আমি নিম্নলিখিত ত্রুটি পাচ্ছি:

ক্রস-অরিজিন রিড ব্লকিং (সিওআরবি) মাইম টাইপ অ্যাপ্লিকেশন / জসন সহ ক্রস-অরিজিন প্রতিক্রিয়া আমার ইউআরএল অবরোধ করেছে । আরও তথ্যের জন্য https://www.chromestatus.com/feature/5629709824032768 দেখুন ।

আমি আজাক্স কলের জন্য নিম্নলিখিত কোড ব্যবহার করেছি:

$.ajax({
  type: 'GET',
  url: My Url,
  contentType: 'application/json',
  dataType:'jsonp',
  responseType:'application/json',
  xhrFields: {
    withCredentials: false
  },
  headers: {
    'Access-Control-Allow-Credentials' : true,
    'Access-Control-Allow-Origin':'*',
    'Access-Control-Allow-Methods':'GET',
    'Access-Control-Allow-Headers':'application/json',
  },
  success: function(data) {
    console.log(data);
  },
  error: function(error) {
    console.log("FAIL....=================");
  }
});

আমি যখন ফিডলারে চেক করেছি, তখন প্রতিক্রিয়া হিসাবে আমি ডেটা পেয়েছি তবে আজাক্স সাফল্যের পদ্ধতিতে নেই।

আমাকে সাহায্য করুন.


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

3
আপনি কি এই সিওআরবি ত্রুটি বা সতর্কতা সমাধান করেছেন? আমি অনুরোধ মডিউল সঙ্গে একই অভিজ্ঞতা।
শেরউইন আবলাñা দাপিতো

3
@ শেরউইনআব্ল্যাডাপিটো আপনি যদি এখনও কোনও সমাধান খুঁজছেন তবে বিকাশ / পরীক্ষার পরিবেশের জন্য আমার উত্তরটি দেখুন
কলিন ইয়ং

1
আপনার জেএস কীভাবে সঠিকভাবে কাজ করতে পারে তা প্রদর্শনের জন্য , আপনি একটি অনিরাপদ মোডে ক্রোম শুরু করতে পারেন chrome.exe --user-data-dir = "সি: / ক্রোম ডে সেশন" - অক্ষম-ওয়েব-সুরক্ষা তবে "রিড ব্লকিং (সিওআরবি)" অবরুদ্ধ ক্রস-অরিজিন প্রতিক্রিয়া " অবশ্যই সার্ভারের পাশে স্থির করতে হবে।
রুসলান নভিকভ

উত্তর:


37
 dataType:'jsonp',

আপনি একটি JSONP অনুরোধ করছেন, কিন্তু সার্ভারটি JSON এর সাথে সাড়া দিচ্ছে।

ব্রাউজারটি JSON কে JSONP হিসাবে বিবেচনা করার চেষ্টা করতে অস্বীকার করছে কারণ এটি একটি সুরক্ষা ঝুঁকি হতে পারে। (যদি ব্রাউজার হয়নি jsonp হিসেবে JSON চিকিৎসার চেষ্টা করে তাহলে এটি, শ্রেষ্ঠ সময়ে, ব্যর্থ হবে)।

জেএসএনপি কী তা সম্পর্কে আরও তথ্যের জন্য এই প্রশ্নটি দেখুন । দ্রষ্টব্য যে একই অরিজিন পলিসিটি কাজ করার জন্য বাজে হ্যাক যা সিওআরএস উপলব্ধ হওয়ার আগে ব্যবহৃত হয়েছিল। সিওআরএস হ'ল সমস্যা, আরও নিরাপদ এবং আরও শক্তিশালী সমাধান।


দেখে মনে হচ্ছে আপনি ক্রস-অরিজিন অনুরোধ করার চেষ্টা করছেন এবং বিরোধী নির্দেশাবলীর এক বিশাল স্তূপে আপনি যা ভাবতে পারেন তার সমস্ত কিছুই নিক্ষেপ করছেন।

একই অরিজিন নীতি কীভাবে কাজ করে তা আপনাকে বুঝতে হবে।

গভীরতর গাইডের জন্য এই প্রশ্নটি দেখুন ।


আপনার কোড সম্পর্কে এখন কয়েকটি নোট:

contentType: 'application/json',
  • আপনি JSONP ব্যবহার করার সময় এটি উপেক্ষা করা হবে
  • আপনি একটি জিইটি অনুরোধ করছেন। প্রকারটি বর্ণনা করার জন্য কোনও অনুরোধ সংস্থা নেই।
  • এটি ক্রস-অরিজিনের অনুরোধটি অ-সরল করে দেবে, যার অর্থ বেসিক সিওআরএস অনুমতিের পাশাপাশি আপনাকে পূর্ব-বিমানের সাথেও ডিল করতে হবে।

ওটা সরিয়ে দাও।

 dataType:'jsonp',
  • সার্ভারটি JSONP দিয়ে সাড়া দিচ্ছে না।

এটা সরাও. (পরিবর্তে আপনি সার্ভারটি জেএসএনপি দিয়ে প্রতিক্রিয়া জানাতে পারেন তবে সিওআরএস আরও ভাল)।

responseType:'application/json',

এটি jQuery.ajax দ্বারা সমর্থিত কোনও বিকল্প নয়। এটা সরাও.

এক্সএইচআরফিল্ডস: red সহকার্ড: মিথ্যা},

এটি ডিফল্ট। আপনি যদি এজ্যাকসেটআপ দিয়ে সত্যে সেট না করেন তবে এটিকে সরিয়ে দিন।

  headers: {
    'Access-Control-Allow-Credentials' : true,
    'Access-Control-Allow-Origin':'*',
    'Access-Control-Allow-Methods':'GET',
    'Access-Control-Allow-Headers':'application/json',
  },
  • এগুলি প্রতিক্রিয়া শিরোনাম। তারা অনুরোধ নয়, প্রতিক্রিয়াতে অন্তর্ভুক্ত।
  • এটি ক্রস-অরিজিনের অনুরোধটি অ-সরল করে দেবে, যার অর্থ বেসিক সিওআরএস অনুমতিের পাশাপাশি আপনাকে পূর্ব-বিমানের সাথেও ডিল করতে হবে।

20

বেশিরভাগ ক্ষেত্রে, অবরুদ্ধ প্রতিক্রিয়াটি ওয়েব পৃষ্ঠার আচরণকে প্রভাবিত করবে না এবং সিওআরবি ত্রুটি বার্তাটি নিরাপদে উপেক্ষা করা যাবে। উদাহরণস্বরূপ, অবরুদ্ধ প্রতিক্রিয়ার বডিটি ইতিমধ্যে খালি থাকলে বা প্রতিক্রিয়াটি কোনও হ্যান্ডেল করতে পারে না এমন প্রসঙ্গে প্রেরণ করা হবে এমন ক্ষেত্রে সতর্কতাটি ঘটতে পারে (যেমন, একটি HTML ডকুমেন্ট যেমন 404 ত্রুটি পৃষ্ঠা একটি ট্যাগ বিতরণ করা হচ্ছে)।

https://www.chromium.org/Home/chromium-security/corb-for-developers

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


12

'অ্যাক্সেস-কন্ট্রোল-মঞ্জুরি-উত্স:' শিরোনাম সহ প্রতিক্রিয়া ফেরান পিএইচপি সার্ভারের প্রতিক্রিয়ার জন্য নীচের কোডটি দেখুন।

<?php header('Access-Control-Allow-Origin: *');
header('Content-Type: application/json');
echo json_encode($phparray); 

2
আপনার প্রতিক্রিয়া সবেমাত্র আমাকে অনেক সাহায্য করেছে !!! আমি কেবল আপনাকে যথেষ্ট ধন্যবাদ দিতে পারি না। আমি "অ্যাক্সেস কন্ট্রোল অরিজিনের অনুমতি দিন" কী করে তা নিয়ে গবেষণা চালিয়ে যাব তাই আমি বুঝতে পারি তবে আমি কেবলমাত্র একটি পিএইচপি ওয়েব পরিষেবা তৈরির প্রাথমিক বিষয়গুলি শিখছি এবং এটি আমাকে বিশ্বাস করেছে যেমন আপনি বিশ্বাস করবেন না। ধন্যবাদ!!!
অ্যাডাম লরি

এটি সমস্যাটি মোটেই সমাধান করে না। Content-Type: application/jsonএটিতে কোনও প্রতিক্রিয়া প্রেরণে এটি একটি সিওআরবি ত্রুটি । ওপির কোডটি ইতিমধ্যে এটি করা উচিত।
কুইন্টিন

1
@ কুইন্টিন, ??? সাধারণ জ্ঞান জানিয়েছে যে যতক্ষণ আপনার কাছে অরিজিনের অনুমতি রয়েছে ততক্ষণ ব্রাউজারটি কোনও সন্দেহজনক শিরোনাম / বডি নির্বিশেষে অনুরোধটিকে মঞ্জুরি দেয়।
পেসারিয়ার

7

আপনাকে সার্ভারের দিকে CORS যুক্ত করতে হবে:

আপনি যদি নোডজেএস ব্যবহার করেন তবে:

প্রথমে আপনাকে নীচের কমান্ডটি ব্যবহার করে ইনস্টল করতে হবে cors :

npm install cors --save

এখন আপনার অ্যাপ্লিকেশন শুরু করার মতো ফাইলগুলিতে নিম্নলিখিত কোডগুলি যুক্ত করুন ( app.js or server.js)

var express = require('express');
var app = express();

var cors = require('cors');
var bodyParser = require('body-parser');

//enables cors
app.use(cors({
  'allowedHeaders': ['sessionId', 'Content-Type'],
  'exposedHeaders': ['sessionId'],
  'origin': '*',
  'methods': 'GET,HEAD,PUT,PATCH,POST,DELETE',
  'preflightContinue': false
}));

require('./router/index')(app);

22
আপনার সমস্যা সমাধানের জন্য যদি আপনাকে কোনও এক্সটেনশন যুক্ত করতে হয় তবে আপনি ভুলভাবে সার্ভার-সাইডে অনুরোধটি পরিচালনা করছেন। শুধু একটি নোট.
আলেকজান্ডার ফাল 13

2
আমার ব্যবহারকারী বেসটি একটি অদ্ভুত ক্রোম এক্সটেনশন ইনস্টল করে তা জিজ্ঞাসা করা অসম্ভব। অন্যান্য ব্রাউজারগুলির কী হবে?
ইস্রায়েল রদ্রিগেজ

2
যদিও এই উত্তরটি দীর্ঘমেয়াদে সমস্যার সমাধান করে না, এটি এই প্লাগইনটি ব্যবহার করছে যা আমার সহকর্মীদের কাছে যাচাই করা এটি একটি কর্স সমস্যা। তাই জন্য upvated!
কোল্ডবেন

2
@ ভ্লাদিমিরনুলের মূল উত্তরটি ক্রোম এক্সটেনশান সম্পর্কে ছিল। শুভম তা আবার লিখে ফেলল। ইতিহাস পরীক্ষা করুন।
ইস্রায়েল রদ্রিগেজ

3
এখানে কিছুটা বিভ্রান্তি রয়েছে। ওপি সিওআরবি উল্লেখ করছে না কর্নকে।
কোনও মেশিন নেই

3

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

  • ফিডলারের সমস্যার অনুরোধ নির্বাচন করুন
  • খোলা AutoResponder ট্যাব
  • ক্লিক Add Ruleনিয়মটি এবং সম্পাদনা করুন:
    • পদ্ধতি: বিকল্পগুলি এখানে সার্ভার url , যেমনMethod:OPTIONS http://localhost
    • *CORSPreflightAllow
  • চেক Unmatched requests passthrough
  • চেক Enable Rules

একটি দম্পতি নোট:

  1. স্পষ্টতই এটি কেবল বিকাশ / পরীক্ষার সমাধান যেখানে এপিআই পরিষেবাটি সংশোধন করা সম্ভব / ব্যবহারিক নয়
  2. তৃতীয় পক্ষের এপিআই সরবরাহকারীর সাথে আপনার যে কোনও চুক্তি রয়েছে তা পরীক্ষা করে দেখুন
  3. অন্যরা যেমন উল্লেখ করেছে, এটি সিওআরএস কীভাবে কাজ করে তার একটি অংশ, এবং শেষ পর্যন্ত শিরোনামটি API সার্ভারে সেট করা দরকার। আপনি যদি সেই সার্ভারটি নিয়ন্ত্রণ করেন তবে আপনি নিজে শিরোনাম সেট করতে পারেন। এই ক্ষেত্রে যেহেতু এটি একটি তৃতীয় পক্ষের পরিষেবা, আমি কেবল তাদের ধরে নিতে পারি যে তাদের কাছে এমন কোনও প্রক্রিয়া রয়েছে যার মাধ্যমে আপনি তাদের উত্সস্থলের সাইটের URL সরবরাহ করতে সক্ষম হবেন এবং সঠিক শিরোনামের সাথে প্রতিক্রিয়া জানাতে তারা সে অনুযায়ী তাদের পরিষেবা আপডেট করবেন।

3

আপনি যদি লোকালহোস্টে কাজ করে থাকেন তবে এটি চেষ্টা করুন, এটিই আমার পক্ষে কাজ করা একমাত্র এক্সটেনশন এবং পদ্ধতি (কৌণিক, কেবল জাভাস্ক্রিপ্ট, কোনও পিএইচপি) নয়

https://chrome.google.com/webstore/detail/moesif-orign-cors-changer/digfbfaphojjndkpccljibejjbppifbc/related?hl=en


2

আপনি পরিবর্তন চেষ্টা করেছি dataTypeথেকে আপনার Ajax অনুরোধ jsonpকরতে json? এটা আমার ক্ষেত্রে এটি স্থির।


2

একটি ক্রোম এক্সটেনশনে, আপনি ব্যবহার করতে পারেন

chrome.webRequest.onHeadersReceived.addListener

সার্ভারের প্রতিক্রিয়া শিরোনামগুলি পুনরায় লিখতে। আপনি হয় একটি বিদ্যমান শিরোলেখ প্রতিস্থাপন বা একটি অতিরিক্ত শিরোনাম যোগ করতে পারেন। এটি আপনি চান শিরোনাম:

Access-Control-Allow-Origin: *

https://developers.chrome.com/extensions/webRequest#event-onHeadersReceived

আমি সিওআরবি ইস্যুতে আটকে ছিলাম এবং এটি আমার জন্য এটি স্থির করেছিল।


1
"ক্রোম অরিজিন রিড ব্লকিং (সিওআরবি) প্রতিক্রিয়াটিকে ব্লক করতে পারার আগে ক্রোম .২ থেকে শুরু করে আপনার প্রতিক্রিয়াগুলি পরিবর্তন করতে হবে, আপনি opt_extraInfpSpec এ 'এক্সট্রাহাইডারস' নির্দিষ্ট করতে হবে। ওয়েব রিকুইয়েস্ট ডক থেকে
সুইস সুইস

0

প্রতিক্রিয়া শিরোনামগুলি সাধারণত সার্ভারে সেট করা থাকে। সেট 'Access-Control-Allow-Headers'থেকে 'Content-Type'সার্ভার প্রান্তের উপর


7
আমি তৃতীয় পক্ষের এপিআই ব্যবহার করছি। সুতরাং আমি এটা করতে পারি না। দয়া করে আমাকে ক্লায়েন্টের কোনও সলিউশন দিন।
জিগনেশ

4
সার্ভার সিদ্ধান্ত দেয় কী অনুমতি দিতে হবে এবং কোনটি নয়। কেবল সার্ভারের সেই অ্যাক্সেস রয়েছে। ক্লায়েন্টের পক্ষ থেকে প্রতিক্রিয়া শিরোনামগুলি নিয়ন্ত্রণ করা একটি সুরক্ষা ঝুঁকি। ক্লায়েন্ট পক্ষের কাজটি হ'ল যথাযথ অনুরোধ প্রেরণ করা এবং তারপরে সার্ভারের মাধ্যমে যা প্রতিক্রিয়া প্রেরণ করা হয়েছে তা পান। : এই দেখুন stackoverflow.com/questions/17989951/...
lifetimeLearner007


0

ক্রস-অরিজিন রিড ব্লকিং (সিওআরবি), একটি অ্যালগরিদম যার মাধ্যমে সন্দেহজনক ক্রস-অরিজিন রিসোর্স লোডগুলি ওয়েব ব্রাউজারে পৌঁছানোর আগে ওয়েব ব্রাউজারগুলির দ্বারা সনাক্ত এবং অবরুদ্ধ করা যেতে পারে..এটি ব্রাউজারকে নির্দিষ্ট ক্রস-অরিজিন নেটওয়ার্ক প্রতিক্রিয়া সরবরাহ করতে বাধা দেওয়ার জন্য ডিজাইন করা হয়েছে একটি ওয়েব পৃষ্ঠায়।

প্রথমে নিশ্চিত করুন যে এই সংস্থানগুলি সঠিক " Content-Type", যেমন, JSON মাইমে টাইপের জন্য - " text/json", " application/json", এইচটিএমএল মাইমে টাইপ - " text/html" প্রদান করা হয়েছে।

দ্বিতীয়: কর্সে মোড সেট করুন অর্থাৎ, mode:cors

আনতে এই জাতীয় কিছু লাগবে

 fetch("https://example.com/api/request", {
            method: 'POST',
            body: JSON.stringify(data),
            mode: 'cors',
            headers: {
                'Content-Type': 'application/json',
                "Accept": 'application/json',
            }
        })
    .then((data) => data.json())
    .then((resp) => console.log(resp))
    .catch((err) => console.log(err))

তথ্যসূত্র: https://chromium.googlesource.com/chromium/src/+/master/services/network/cross_origin_read_blocking_explainer.md

https://www.chromium.org/Home/chromium-security/corb-for-developers


0

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

যাইহোক, আপনার সিওআরএসের প্রিফলাইট প্রতিক্রিয়াগুলি (বিকল্পগুলির পদ্ধতি প্রতিক্রিয়াগুলি) একটি বডি নেই (204) । সামগ্রী খালি অ্যাপ্লিকেশন / অক্টেট-স্ট্রিম এবং দৈর্ঘ্যের শূন্য সহ একটি খালি 200 এখানে খুব ভালভাবে কাজ করেছে।

আপনি যদি নিশ্চিত হয়ে যেতে পারেন যে আপনি বার্তা সংস্থার সাথে সিওআরবি সতর্কতা বনাম অপ্টিশনস প্রতিক্রিয়াগুলি গণনা করে আঘাত করছেন confirm


0

দেখে মনে হচ্ছে 200 এর সাথে খালি প্রতিক্রিয়া পাঠানোর সময় এই সতর্কতাটি ঘটেছে।

আমার .htaccessপ্রদর্শনে এই কনফিগারেশনটি Chrome এ সতর্কতা:

Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST,GET,HEAD,OPTIONS,PUT,DELETE"
Header always set Access-Control-Allow-Headers "Access-Control-Allow-Headers, Origin,Accept, X-Requested-With, Content-Type, Access-Control-Request-Method, Access-Control-Request-Headers, Authorization"

RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule .* / [R=200,L]

তবে শেষ পংক্তিতে পরিবর্তন করা হচ্ছে

RewriteRule .* / [R=204,L]

ব্যাপারটি সমাধান কর!


-2

আমার ক্রোম এক্সটেনশনে আমার একই সমস্যা ছিল। যখন আমি আমার ম্যানিফেস্ট "কন্টেন্ট_স্ক্রিপ্টস" বিকল্পটিতে এই অংশটি যুক্ত করার চেষ্টা করেছি:

//{
    //  "matches": [ "<all_urls>" ],
    //  "css": [ "myStyles.css" ],
    //  "js": [ "test.js" ]
    //}

এবং আমি আমার প্রকাশ্য "অনুমতিগুলি" থেকে অন্য অংশটি সরিয়েছি:

"https://*/"

কেবলমাত্র আমি যখন কোনও এক্সএইচআর এর পুনরায় অনুরোধটি সের করি তখন তা অদৃশ্য হয়ে যায়।

আমার কোডে খুব কম এক্সএইচআর পুনরায় জিজ্ঞাসাবাদ রয়েছে এবং তার মধ্যে কেবল একটিই সিওআরবি ত্রুটি পেতে শুরু করেছে (কেন সিওআরবি অন্যান্য এক্সএইচআর সম্পর্কে জানতে পারি না আমি জানি না; কেন প্রকাশ্য পরিবর্তনগুলি এই ত্রুটিটি স্বীকৃত আমি জানি না)। সে কারণেই আমি কয়েক ঘন্টার মধ্যে পুরো কোডটি বারবার পরিদর্শন করেছি এবং প্রচুর সময় হারিয়েছি।


সার্ভার সাইডে শিরোনামগুলির সাথে কিছু সমস্যা ছিল। আমি আমার এএসপি.নেট ফেরতের মানটিকে এতে পরিবর্তন করি: পাবলিক অ্যাসিঙ্ক টাস্ক <স্ট্রিং> পান (স্ট্রিং টিএম) রিটার্নের মানটি এক মুহুর্ত আগে জেএসওএন ছিল (সামগ্রীর ধরণের হিসাবে আমি "অ্যাপ্লিকেশন / জেসন" অনুমান করি) এবং এখন এটি অন্যটি (সম্ভবত "পাঠ্য হতে পারে") / প্লেইন ")। এবং এটি সাহায্য করে। এখন আমি প্রকাশিত "অনুমতিগুলি" কে "https: // * /" এ ফিরিয়ে দিই এবং এটি কার্যকর হয়।
40 Хитрень

-3

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

এবং Chrome এ ওএসএক্সের জন্য টার্মিনাল খুলুন এবং চালান:

$ open -a Google\ Chrome --args --disable-web-security --user-data-dir

OSX- এ 49+ ক্রোমের জন্য ব্যবহারকারী - ডেটা-ডির প্রয়োজন

লিনাক্স রান জন্য:

$ google-chrome --disable-web-security

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

-–allow-file-access-from-files

উইন্ডোজ কমান্ড প্রম্পটে যান এবং সেই ফোল্ডারে যান যেখানে Chrome.exe রয়েছে এবং টাইপ করুন

chrome.exe --disable-web-security

এটি একই উত্স নীতিটি অক্ষম করে এবং আপনাকে স্থানীয় ফাইলগুলিতে অ্যাক্সেস করার অনুমতি দেওয়া উচিত।


-3

আমি এই সমস্যার মুখোমুখি হয়েছি কারণ সার্ভার থেকে jsonp প্রতিক্রিয়াটির ফর্ম্যাটটি ভুল। ভুল প্রতিক্রিয়া নিম্নরূপ।

callback(["apple", "peach"])

সমস্যাটি হ'ল ভিতরে the callback থাকা অবজেক্টটি একটি জসন অ্যারের পরিবর্তে সঠিক জেসন বস্তু হওয়া উচিত। সুতরাং আমি কিছু সার্ভার কোড পরিবর্তন করেছি এবং এর ফর্ম্যাটটি পরিবর্তন করেছি:

callback({"fruit": ["apple", "peach"]})

সংশোধন করার পরে ব্রাউজারটি আনন্দের সাথে প্রতিক্রিয়াটি গ্রহণ করেছিল।


callback(["apple", "peach"])পুরোপুরি বৈধ জেএসওএনপি, এবং আমি যখন এটির উত্স জুড়ে পরীক্ষা করেছি তখন ঠিক কাজ করেছে।
কোয়ান্টিন

-4

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

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