प्रीफ़लाइट अनुरोध के प्रतिसाद एक्सेस एक्सेस चेक पास नहीं करता है


458

अमेज़न वेब सेवा पर REST API कॉल करने के लिए मुझे ngResource का उपयोग करके यह त्रुटि मिल रही है:

XMLHttpRequest http://server.apiurl.com:8000/s/login?login=facebook लोड नहीं कर सकता । प्रीफ़्लाइट अनुरोध का जवाब एक्सेस कंट्रोल चेक पास नहीं करता: अनुरोधित संसाधन पर कोई 'एक्सेस-कंट्रोल-अनुमति-उत्पत्ति' हेडर मौजूद नहीं है। उत्पत्ति ' http: // localhost ' इसलिए पहुँच की अनुमति नहीं है। त्रुटि 405

सर्विस:

socialMarkt.factory('loginService', ['$resource', function($resource){    
    var apiAddress = "http://server.apiurl.com:8000/s/login/";
    return $resource(apiAddress, { login:"facebook", access_token: "@access_token" ,facebook_id: "@facebook_id" }, {
                getUser: {method:'POST'}
            });
}]);

नियंत्रक:

[...]
loginService.getUser(JSON.stringify(fbObj)),
                function(data){
                    console.log(data);
                },
                function(result) {
                    console.error('Error', result.status);
                }
[...]

मैं Chrome का उपयोग कर रहा हूं, और मुझे नहीं पता कि इस समस्या को ठीक करने के लिए और क्या करना है। मैंने हेडर को मूल से स्वीकार करने के लिए सर्वर भी कॉन्फ़िगर किया है localhost


भ्रमित: क्या आपने "सर्वर को कॉन्फ़िगर किया है" या यह "अमेज़ॅन वेब सेवा पर एक बाकी एपीआई" है?
dandavis

3
आपने स्पष्ट रूप से सर्वर साइड पर कॉर्स को सक्षम करने के लिए पर्याप्त नहीं किया है। प्रतिक्रिया हेडर का नमूना पोस्ट करें
charlietfl

4
किसी भी तरह से आपके डाउन वोट गलत हैं। वह अपनी फ़ाइलों को अपने स्थानीय मशीन पर होस्ट कर रहा है। इससे कोई फर्क नहीं पड़ेगा कि वह बैक एंड पर किस तरह का कॉन्फिडेंस रखता है। कोणीय इस पूर्व उड़ान की अनुमति नहीं देगा।
ई। मैगिनी

3
टिप्पणियों के लिए Thx, यह तब काम किया जब मैंने सुरक्षा को चालू करने के लिए ब्राउज़र सेट किया
आंद्रे मेंडेस

1
@Andre लेकिन सुरक्षा बंद करना केवल एक बदसूरत काम है जहाँ आप सुरक्षा से समझौता कर रहे हैं, आपकी समस्या का समाधान नहीं होगा ...
shivi

जवाबों:


241

आप कोर मुद्दों में चल रहे हैं।

इसे ठीक करने / हल करने के कई तरीके हैं।

  1. कॉर्स बंद करें। उदाहरण के लिए: क्रोम में कोर को कैसे बंद करें
  2. अपने ब्राउज़र के लिए एक प्लगइन का उपयोग करें
  3. एक प्रॉक्सी का उपयोग करें जैसे कि nginx। सेट अप करने का तरीका
  4. अपने सर्वर के लिए आवश्यक सेटअप से गुजरें। यह उस वेब सर्वर का एक अधिक कारक है जिसे आपने अपने EC2 उदाहरण पर लोड किया है (यह मानते हुए कि आपका "अमेज़न वेब सेवा" से क्या मतलब है)। अपने विशिष्ट सर्वर के लिए आप कॉर्स वेबसाइट को सक्षम कर सकते हैं

अधिक मौखिक रूप से, आप लोकलहोस्ट से api.serverurl.com तक पहुंचने का प्रयास कर रहे हैं। यह क्रॉस डोमेन अनुरोध की सटीक परिभाषा है।

अपने काम को पूरा करने के लिए या तो इसे बंद कर दें (ठीक है, यदि आप अन्य साइटों पर जाते हैं और सड़क को नीचे गिरा सकते हैं तो आपके लिए खराब सुरक्षा डाल सकते हैं) आप एक प्रॉक्सी का उपयोग कर सकते हैं जो आपके ब्राउज़र को लगता है कि सभी अनुरोध स्थानीय होस्ट से आते हैं वास्तव में आपके पास स्थानीय सर्वर है जो तब दूरस्थ सर्वर को कॉल करता है।

इसलिए api.serverurl.com लोकलहोस्ट बन सकता है: 8000 / api और आपका स्थानीय nginx या अन्य प्रॉक्सी सही गंतव्य पर भेजेगा।


अब लोकप्रिय मांग से, 100% अधिक कोर की जानकारी .... वही शानदार स्वाद!


और डाउनवॉटर्स के लिए .... कॉर्स को दरकिनार करना ठीक वैसा ही है जैसा कि सामने के छोर को सीखने वालों के लिए होता है। https://codecraft.tv/courses/angular/http/http-with-promises/



40
वोट डाउन करना आसान है। कम जोखिम लेना आसान है अपने आप को मेरे दोस्त। और ये सभी वास्तव में एक देव वातावरण में काम करते हैं।
ई। मैगिनी

3
यह वास्तव में काम किया। मैंने वेब सुरक्षा को अक्षम करने के लिए ध्वज जोड़ा। विकास के लिए ठीक है।
आंद्रे मेंडेस

15
@charlietfl कैसे?
GreenAsJade

3
शुक्रिया आपने मेरा दिन बचाया। केवल पहले विकल्प का उपयोग किया गया: C: \ Program Files (x86) \ Google \ Chrome \ Application> chrome.exe --user-data-dir = "C: \ Chrome dev session" --disable-web-security। प्रेषक: stackoverflow.com/questions/3102819/…
हरसिमर

169

मेरा "एपीआई सर्वर" एक PHP अनुप्रयोग है ताकि इस समस्या को हल करने के लिए मुझे काम करने के लिए नीचे दिए गए समाधान मिलें:

तर्जनी को index.php में रखें

header('Access-Control-Allow-Origin: *');
header('Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS');
header('Access-Control-Allow-Headers: Origin, Content-Type, X-Auth-Token');

3
मैं मानता हूं, यह स्वीकार किए गए उत्तर से बेहतर है, हालांकि इन पंक्तियों को कॉपी करते समय सावधान रहें, तरीकों और मूल को संशोधित करना सुनिश्चित करें।
अमीर सवंद

11
इसे एक कोणीय 6 परियोजना में कहां रखा जाए?
whatthefish

@CodyBugstein और whatthefish किसी भी आउटपुट से पहले डालते हैं
Garet Claborn

मेरे क्लाइंट ऐप ने काम करना बंद कर दिया जब मैंने एक हेडर जोड़ा जो केवल कुछ सर्वरों के लिए आवश्यक है। यदि अनुरोध में कोई कस्टम हेडर शामिल है, तो उन्हें सूचीबद्ध करने की आवश्यकता होगी Access-Control-Allow-Headers
z0r

47

AspNetCore वेब एप में, "Microsoft.AspNetCore.Cors" (ver 1.1.1) को जोड़कर और Startup.cs पर नीचे किए गए परिवर्तनों को जोड़कर यह समस्या ठीक हो गई।

public void ConfigureServices(IServiceCollection services)
{ 
    services.AddCors(options =>
    {
          options.AddPolicy("AllowAllHeaders",
                builder =>
            {
                    builder.AllowAnyOrigin()
                           .AllowAnyHeader()
                           .AllowAnyMethod();
                });
    });
    .
    .
    .
}

तथा

public void Configure(IApplicationBuilder app, IHostingEnvironment env, ILoggerFactory loggerFactory)
{


    // Shows UseCors with named policy.
    app.UseCors("AllowAllHeaders");
    .
    .
    .
}

और [EnableCors("AllowAllHeaders")]नियंत्रक पर डाल रहा है ।


18
यदि आप क्रॉस साइट स्क्रिप्टिंग कमजोरियों में निर्माण करना चाहते हैं तो यह एक अच्छा जवाब है! कृपया ऐसा कभी न करें! अपने डोमेन निर्दिष्ट करें जिसे आप सुरक्षा समस्याओं से बचने के लिए एक्सेस कर सकते हैं। CORS एक कारण के लिए है।
--१

2
बस यह स्पष्ट @paqogomez बनाने के लिए, अपने ConfigureServices विधि में: services.AddCors (विकल्प => {options.AddPolicy ( "AllowSpecificOrigin", बिल्डर => {builder.WithOrigins ( " स्थानीय होस्ट" ) .AllowAnyOrigin () .AllowAnyHeader ()। AllowAnyMethod ();});}); और आपकी कॉन्फिग विधि में: app.UseCors ("AllowSpecificOrigin");
फ्रांसिस्को टेना

28

जब कोर्स की बात आती है तो कुछ चेतावनी दी जाती हैं। सबसे पहले, यह वाइल्डकार्ड की अनुमति नहीं देता है* लेकिन मुझे इस पर पकड़ नहीं है कि मैंने इसे कहीं पढ़ा है और मुझे अब लेख नहीं मिल सकता है।

यदि आप किसी भिन्न डोमेन से अनुरोध कर रहे हैं तो आपको मूल हेडर जोड़ने की आवश्यकता है।

 Access-Control-Allow-Origin: www.other.com 

आप अनुरोध करता है कि पोस्ट / PUT / PATCH तरह सर्वर संसाधनों को प्रभावित है, और माइम प्रकार निम्नलिखित की तुलना में अलग है अगर कर रहे हैं application/x-www-form-urlencoded, multipart/form-dataया text/plainब्राउज़र अपने आप एक उड़ान-पूर्व विकल्प सर्वर के साथ की जाँच करने के लिए अनुरोध करता है, तो यह है कि यह अनुमति होगी कर देगा ।

तो आपके एपीआई / सर्वर को इन विकल्पों के अनुरोधों को तदनुसार संभालने की आवश्यकता है, आपको उचित प्रतिक्रिया देने की आवश्यकता है access control headersऔर http प्रतिक्रिया स्थिति कोड की आवश्यकता है 200

हेडर कुछ इस तरह के होने चाहिए, उन्हें अपनी आवश्यकताओं के लिए समायोजित करें:

   Access-Control-Allow-Methods: GET, POST, PUT, PATCH, POST, DELETE, OPTIONS
   Access-Control-Allow-Headers: Content-Type
   Access-Control-Max-Age: 86400

अधिकतम आयु शीर्ष लेख महत्वपूर्ण है, मेरे मामले में, यह इसके बिना काम नहीं करेगा, मुझे लगता है कि ब्राउज़र को "एक्सेस अधिकारों" के लिए जानकारी की आवश्यकता है जो वैध हैं।

इसके अलावा, यदि आप उदाहरण के लिए एक अलग डोमेन से माइम के POSTसाथ अनुरोध कर रहे हैं, तो आपको application/jsonपहले उल्लेखित मूल हेडर जोड़ने की भी आवश्यकता है, इसलिए यह इस तरह दिखेगा:

   Access-Control-Allow-Origin: www.other.com 
   Access-Control-Allow-Methods: GET, POST, PUT, PATCH, POST, DELETE, OPTIONS
   Access-Control-Allow-Headers: Content-Type
   Access-Control-Max-Age: 86400

जब पूर्व उड़ान सफल हो जाती है और सभी आवश्यक जानकारी प्राप्त हो जाती है तो आपका वास्तविक अनुरोध किया जाएगा।

सामान्यतया, जो भी हो Access-Control शुरुआती या पूर्व-उड़ान अनुरोध में हेडर का अनुरोध किया जाता है, उसे काम करने के लिए प्रतिक्रिया में दिया जाना चाहिए।

इस लिंक पर एमडीएन डॉक्स में एक अच्छा उदाहरण है , और आपको इस एसओ पोस्ट को भी देखना चाहिए


1
यहाँ मोज़िला लेख है कि आप कैसे cors उत्पत्ति के लिए वाइल्डकार्ड का उपयोग नहीं कर सकते हैं के बारे में बात कर रहे हैं: लिंक तो जाहिरा तौर पर यह केवल क्रेडेंशियल्स का उपयोग करते समय लागू होता है (यदि मैं सही ढंग से समझ रहा हूं)
हेल्ज़गेट

मैं वाइल्डकार्ड का उपयोग कर रहा हूं और अनुरोध को प्राधिकृत करने के लिए एक वाहक टोकन जमा कर रहा हूं और यह ठीक काम कर रहा है, इसलिए सुनिश्चित नहीं है कि जो लिंक मैंने ऊपर दिया है वह क्रेडेंशियल्स के बारे में है। मेरा मुद्दा यह था कि जब .net Core में अपनी CORS नीति को उभारा जा रहा है तो मैंने नहीं जोड़ा .AllowCredentials().AllowCredentials()सब कुछ जोड़ने के बाद काम किया।
हेलजेट 16

15

जावास्क्रिप्ट XMLHttpRequest और Fetch समान-मूल नीति का पालन करते हैं। तो, XMLHttpRequest या Fetch का उपयोग करने वाला एक वेब एप्लिकेशन केवल HTTP अनुरोधों को अपने स्वयं के डोमेन पर बना सकता है।

स्रोत: https://developer.mozilla.org/en-US/docs/Web/HTTP/Access_control_CORS

आपको अपने सर्वर की ओर से Access-Control-Allow-Origin: * HTTP हेडर भेजना होगा ।

यदि आप अपाचे को अपने HTTP सर्वर के रूप में उपयोग कर रहे हैं तो आप इसे अपनी अपाचे विन्यास फाइल में इस तरह जोड़ सकते हैं:

<IfModule mod_headers.c>
    Header set Access-Control-Allow-Origin "*"
</IfModule>

मोड_हेडर्स अपाचे में डिफ़ॉल्ट रूप से सक्षम है, हालांकि, आप यह सुनिश्चित करना चाहते हैं कि यह चलकर सक्षम हो जाए:

 a2enmod headers

मुझे अपनी अपाचे कॉन्फ़िगरेशन फ़ाइल कहां मिल सकती है?
शुभम आर्य

: @ShubhamArya linux डेबियन पर डिफ़ॉल्ट स्थान है/etc/apache2/apache2.conf
तादेज

मैं इसे विंडोज़ में कहाँ ढूँढ सकता हूँ?
शुभम आर्य

10

यदि आप क्रोम-एक्सटेंशन लिख रहे हैं

आपको manifest.jsonअपने डोमेन (एस) के लिए अनुमतियों में जोड़ना होगा ।

"permissions": [
   "http://example.com/*",
   "https://example.com/*"
]

1
यह भी जांचें कि क्या आपके पास www उपसर्ग है
Vlas Bashynskyi

8

यदि आप संयोग से IIS सर्वर का उपयोग कर रहे हैं। आप HTTP अनुरोध हेडर विकल्प में हेडर नीचे सेट कर सकते हैं।

Access-Control-Allow-Origin:*
Access-Control-Allow-Methods: 'HEAD, GET, POST, PUT, PATCH, DELETE'
Access-Control-Allow-Headers: 'Origin, Content-Type, X-Auth-Token';

इस पोस्ट के साथ, आदि, ठीक काम करेंगे।


5

अजगर फ्लास्क सर्वर के लिए, आप क्रॉस डोमेन अनुरोधों को सक्षम करने के लिए फ्लास्क-कॉर्स प्लगइन का उपयोग कर सकते हैं।

देखें: https://flask-cors.readthedocs.io/en/latest/


5

PHP में आप शीर्ष लेख जोड़ सकते हैं:

<?php
header ("Access-Control-Allow-Origin: *");
header ("Access-Control-Expose-Headers: Content-Length, X-JSON");
header ("Access-Control-Allow-Methods: GET, POST, PATCH, PUT, DELETE, OPTIONS");
header ("Access-Control-Allow-Headers: *");
...

धन्यवाद, यह मेरे लिए काम किया! परीक्षण और उत्पादन वातावरण में। यहां तक ​​कि https: //
जोस सेई

1
@atiruz समाधान के लिए धन्यवाद। यह काम करता है जब मैंने लाइन जोड़ीheader ("Access-Control-Expose-Headers: Content-Length, X-JSON");
सिलम्बरासन आरडी

5

नोड-जेएस एप्लिकेशन में क्रॉस-ऑरिजिन-रिक्वेस्ट समस्याओं को ठीक करने के लिए:

npm i cors

और बस नीचे लाइनों को जोड़ने के लिए app.js

let cors = require('cors')
app.use(cors())

3
यह केवल एक्सप्रेस जेएस ऐप्स में काम करता है, सभी नोड ऐप्स नहीं
16

3

मेरी Apache VirtualHost config फाइल में, मैंने निम्नलिखित पंक्तियों को जोड़ा है:

Header always set Access-Control-Allow-Origin "*"
Header always set Access-Control-Allow-Methods "POST, GET, OPTIONS, DELETE, PUT"
Header always set Access-Control-Max-Age "1000"
Header always set Access-Control-Allow-Headers "x-requested-with, Content-Type, origin, authorization, accept, client-security-token"

RewriteEngine On
RewriteCond %{REQUEST_METHOD} OPTIONS
RewriteRule ^(.*)$ $1 [R=200,L]

3

उन लोगों के लिए एपीआई गेटवे के साथ लैंबडा इंटीग्रेटेड प्रॉक्सी का उपयोग कर रहे हैं । आपको अपने लंबो फ़ंक्शन को कॉन्फ़िगर करने की आवश्यकता है जैसे कि आप सीधे अपने अनुरोध सबमिट कर रहे हैं, जिसका अर्थ है कि फ़ंक्शन को प्रतिक्रिया हेडर ठीक से सेट करना चाहिए। (यदि आप कस्टम लंबो कार्यों का उपयोग कर रहे हैं, तो इसे एपीआई गेटवे द्वारा नियंत्रित किया जाएगा।)

//In your lambda's index.handler():
exports.handler = (event, context, callback) => {
     //on success:
     callback(null, {
           statusCode: 200,
           headers: {
                "Access-Control-Allow-Origin" : "*"
           }
     }
}

1
मैं भी झंकार करना चाहता हूं और एक बड़े गेटेका का उल्लेख करता हूं जो मुझे नहीं लगता कि एडब्ल्यूएस दस्तावेज हैं। मान लें कि आप अपने लैम्ब्डा फ़ंक्शन को प्रॉक्सी करने के लिए एपीआई गेटवे का उपयोग करते हैं, और आप उस लैम्बडा फ़ंक्शन में कुछ एपीआई का उपयोग करते हैं। यदि एपीआई एक गैर-200 सफलता सफलता कोड देता है और आपने गैर-200 सफलता कोड को एपीआई गेटवे में विधि प्रतिक्रिया में नहीं जोड़ा है, तो आप एक त्रुटि प्राप्त करेंगे और आपकी सफल प्रतिक्रिया नहीं देखेंगे । इसके लिए उदाहरण: Sendgrid और Twilio में गैर-200 सफलता कोड हैं।
स्टीफन टेट्र्टॉल्ट

3

मुझे लगता है कि क्रोम से कोर को अक्षम करना अच्छा तरीका नहीं है , क्योंकि यदि आप इसे आयनिक में उपयोग कर रहे हैं, तो निश्चित रूप से मोबाइल बिल्ड में समस्या फिर से उठेगी।

अपने बैकएंड में फिक्स करना बेहतर है।

सबसे पहले हेडर में, आपको सेट करना होगा-

  • हेडर ('एक्सेस-कंट्रोल-अनुमति-उत्पत्ति: *');
  • हेडर ('हेडर सेट एक्सेस-कंट्रोल-अलाउंस-हेडर्स: "ओरिजिन, एक्स-रिक्वेस्ट-विद, कंटेंट-टाइप, एक्सेप्ट");

और अगर एपीआई GET और POST दोनों के रूप में व्यवहार कर रहा है तो अपने हेडर में भी सेट करें-

if ($ _SERVER ['REQUEST_METHOD'] == 'विकल्प') {अगर (isset ($ _ SERVER ['HTTP_ACCESS_CONTROL_REQUEST_METHOD]]) हेडर ("एक्सेस-कंट्रोल-अलाउंस-मेथड्स: GET, पोस्ट, विकल्प");
अगर (isset ($ _ SERVER ['HTTP_ACCESS_CONTROL_REQUEST_HEADERS'))) हेडर ("एक्सेस-कंट्रोल-कंट्रोल-अनुमति हेडर:
{$ _SERVER ['HTTP_ACCESS_CONTROL_REQUEST_HEADERS']}");) बाहर निकलने के (0); }


3

इस त्रुटि का एक बहुत ही सामान्य कारण यह हो सकता है कि होस्ट एपीआई ने http विधि (जैसे PUT) के लिए अनुरोध को मैप किया था और API क्लाइंट API को एक अलग http विधि (जैसे POST या GET) का उपयोग करके कॉल कर रहा है।


मैं अपने सर्वर में ठीक से PUT
कोर

3

हमारी टीम कभी-कभी Vue, axios और C # WebApi का उपयोग करके इसे देखती है। एंडपॉइंट पर एक रूट विशेषता जोड़कर आप इसे हिट करने का प्रयास कर रहे हैं जो हमारे लिए इसे ठीक करता है।

[Route("ControllerName/Endpoint")]
[HttpOptions, HttpPost]
public IHttpActionResult Endpoint() { }

हम वास्तव में क्यों यकीन नहीं कर रहे हैं। जबरदस्त हंसी। अगर कोई मुझे जाने देता है!
14:00 पर w00ngy

1

मुझे इस समस्या का सामना करना पड़ा है जब DNS सर्वर 8.8.8.8 (Google के) पर सेट किया गया था। वास्तव में, समस्या राउटर में थी, मेरे आवेदन ने स्थानीय रूप से (मेरे विशेष मामले के लिए) Google के माध्यम से सर्वर से जुड़ने की कोशिश की। मैंने 8.8.8.8 को हटा दिया है और इस मुद्दे को हल किया है। मुझे पता है कि इस मुद्दे को कोर सेटिंग्स द्वारा हल किया गया है, लेकिन शायद किसी को मेरे समान ही परेशानी होगी


1

मैं अपलोड के लिए AWS sdk का उपयोग कर रहा हूं, ऑनलाइन कुछ समय बिताने के बाद मैं इस धागे पर ठोकर खाई। @lsimoneau 45581857 की बदौलत यह पता चलता है कि ठीक वही बात हो रही थी। मैंने बस क्षेत्र के विकल्प को संलग्न करके अपनी बाल्टी पर इस क्षेत्र के लिए मेरे अनुरोध को इंगित किया और यह काम किया।

 const s3 = new AWS.S3({
 accessKeyId: config.awsAccessKeyID,
 secretAccessKey: config.awsSecretAccessKey,
 region: 'eu-west-2'  // add region here });

0

जियोसर्वर के स्टैंडअलोन वितरण में जेटी एप्लिकेशन सर्वर शामिल है। जियोसर्वर का उपयोग करने के लिए अपने स्वयं के डोमेन के बाहर जावास्क्रिप्ट अनुप्रयोगों को अनुमति देने के लिए क्रॉस-ऑरिजनल रिसोर्स शेयरिंग (कोर) सक्षम करें।

निम्नलिखित <filter>और <filter-mapping>वेबपेज / जियोसर्वर / WEB-INF / web.xml से प्राप्त करें:

<web-app>
  <filter>
      <filter-name>cross-origin</filter-name>
      <filter-class>org.eclipse.jetty.servlets.CrossOriginFilter</filter-class>
  </filter>
  <filter-mapping>
      <filter-name>cross-origin</filter-name>
      <url-pattern>/*</url-pattern>
  </filter-mapping>
</web-app>

इसने हेडर के जवाब में एंथिंग को नहीं जोड़ा, इसलिए यह काम नहीं किया
जॉलीरोगर

1
GeoServer का उपयोग नहीं कर रहा है, लेकिन इस क्लिप ने मुझे कॉल प्राप्त करने वाले ऐप पर उपयोग की जाने वाली सेटिंग्स को जानने में मदद की।
मैट फेलज़ानी

0

कुछ भी चिंता किए बिना, आसानी से कुछ कदमों के साथ इस मुद्दे को हल करना आसान है। कृपया, इसे हल करने के लिए चरणों का पालन करें।

  1. खुला ( https://www.npmjs.com/package/cors#eneable-cors-pre-flight )
  2. स्थापना के लिए जाओ और नोड nP टर्मिनल के माध्यम से स्थापित करने के लिए कमांड npm स्थापित cors की प्रतिलिपि बनाएँ
  3. स्क्रॉल करने के लिए सरल उपयोग (सभी कॉर्सेस अनुरोधों को सक्षम करें) पर जाएं और उर परियोजना में संपूर्ण घोषणा को कॉपी और पेस्ट करें और इसे चलाएं ... जो निश्चित रूप से काम करेगा .. टिप्पणी कोड को कॉपी करें और ur app.js या किसी अन्य में पेस्ट करें। प्रोजेक्ट करें और एक कोशिश करें .. यह काम करेगा। यह हर क्रॉस ओरिजिनल रिसोर्स शेयरिंग को अनलॉक करेगा..तो हम आपके उपयोग के लिए सेवा के बीच स्विच कर सकते हैं

1
var express = आवश्यकता ('express') var cors = आवश्यकता ('cors') var app = express () app.use (cors ()) app.get ('/ products /: id', function (req, res,) अगला) {res.json ({msg: 'यह सभी उत्पत्ति के लिए कोर्स-सक्षम है!')})}) app.listen (80, फ़ंक्शन () {कंसोल.लॉग ('CORS- सक्षम वेब सर्वर पोर्ट 80 पर सुन रहा है') )})
राहुल sah

-1

कुछ ऐसा जो याद करना बहुत आसान है ...

समाधान खोजकर्ता में, एपी-प्रोजेक्ट पर राइट-क्लिक करें। गुण विंडो में 'अनाम प्रमाणीकरण' को सक्षम करने के लिए सेट करें !!!


-8

क्रोम सुरक्षा अक्षम करें। क्रोम शॉर्टकट पर राइट-क्लिक करें - गुण -> लक्ष्य, इस "C: \ Program Files (x86) \ Google \ Chrome \ Application \ chrome.exe" को पेस्ट करें --disable-web-security-user डाटा-dir = "c: / chromedev"

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.