Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

223
Visualizações
cómo restringir la solicitud de origen cruzado para otros dominios usando COR

Estoy trabajando en el proyecto web api de asp.net. Quiero permitir solo el acceso a mi dominio, pero funciona bien cuando llamo a mi webapi desde JavaScript, pero el problema es que cuando llamo a la web api desde el código c #, permite que cualquier dominio acceda. ¿Cómo puedo restringir esto? quiero dar acceso solo para mi dominio

Estoy trabajando en el proyecto web api de asp.net. Quiero permitir solo el acceso a mi dominio, pero funciona bien cuando llamo a mi webapi desde JavaScript, pero el problema es que cuando llamo a la web api desde el código C#, permite que todos accedan a Domine. ¿Cómo puedo restringir esto? ..? quiero dar acceso solo para mi dominio

about 4 years ago · Juan Pablo Isaza
2 Respostas
Responde à pergunta

0

Puede usar Microsoft.AspNet.WebApi.Cors, un paquete Nuget de Microsoft. Siga estos pasos:

  1. paquete de instalación para su proyecto de API.

  2. agregue un código de línea a su archivo App_Start/WebApiConfig.cs para habilitar la función: config.EnableCors();

     using System.Web.Http; namespace WebService { public static class WebApiConfig { public static void Register(HttpConfiguration config) { // New code config.EnableCors(); config.Routes.MapHttpRoute( name: "DefaultApi", routeTemplate: "api/{controller}/{id}", defaults: new { id = RouteParameter.Optional } ); } } }
  3. use el atributo en su controlador o acción como esta:

     using System.Net.Http; using System.Web.Http; using System.Web.Http.Cors; namespace WebService.Controllers { [EnableCors(origins: "http://mywebclient.azurewebsites.net", headers: "*", methods: "*")] public class TestController : ApiController { // Controller methods not shown... } }

Puedes obtener más información aquí

about 4 years ago · Juan Pablo Isaza Relatório

0

1=> var cors = new EnableCorsAttribute("http://mydomain", "*", "*"); config.EnableCors(cors); Escribí este código en el archivo de configuración web como nivel global, pero funciona bien cuando llamo a mi API web desde el lado del cliente, solo permite un dominio específico

2=> Este es mi código del lado del cliente

 <script src="https://cdnjs.cloudflare.com/ajax/libs/knockout/2.2.0/knockout-min.js"></script> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> $ $.ajax({ url: "http://localhost:49676/Account/ValidLogin", method: "get", data: Employee, dataType: "json", //contentType: "application/json", success: function (data) { GetAllEmployee(data); alert("success"); console.log(data); }, error: function (err) { alert("error"); }
3. Escribí un código en el archivo de configuración web para restringir la solicitud de otro dominio, pero cuando llamo a la API web por parte del cliente, permito que cualquier dominio acceda, por lo que mi problema es que quiero restringir mi formulario API Otro dominio público

Aquí está mi código del lado del servidor

void protegido btnDelete_Click(objeto remitente, EventArgs e) {

 string strUrl = string.Format("http://mydomain/account/validlogin?username=admin&password=admin"); HttpWebRequest requestObjectGet = (HttpWebRequest)HttpWebRequest.Create(strUrl); requestObjectGet.Method = "GET"; HttpWebResponse responseObjectGet = null; responseObjectGet = (HttpWebResponse)requestObjectGet.GetResponse(); string strresulttest = null; using (Stream stream = responseObjectGet.GetResponseStream()) { StreamReader sr = new StreamReader(stream); strresulttest = sr.ReadToEnd(); JavaScriptSerializer js = new JavaScriptSerializer(); string StrToken = js.Deserialize<string>(strresulttest); Session["ApiToken"] = StrToken;

}

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda