如何修复 DOMException:无法在“XMLHttpRequest”上执行“打开”:调用第三方服务器/api 时 URL Angular HttpClient 无效?

Posted

技术标签:

【中文标题】如何修复 DOMException:无法在“XMLHttpRequest”上执行“打开”:调用第三方服务器/api 时 URL Angular HttpClient 无效?【英文标题】:How to fix DOMException: Failed to execute 'open' on 'XMLHttpRequest': Invalid URL Angular HttpClient when calling a third party server/api? 【发布时间】:2019-09-25 08:38:10 【问题描述】:

我收到以下错误:

DOMException: Failed to execute 'open' on 'XMLHttpRequest': Invalid URL

执行GET debounce.com 请求时

importHttpClient from '@angular/common/http';

export ThisClass 

constructor(private http:HttpClient)


validateEmailBounce(email) 
    const url = 'https://api.debounce.io/v1/?api=my_api_key&email=' + email;
    console.log(url); // https://api.debounce.io/v1/?api=my_api_key&email=someone@email.com
    return this.http.get(url);
  

【问题讨论】:

如果你使用 localhost,那么只在你的 localhost 之前使用 http:// Angular 2 Failed to execute open on XMLHttpRequest: Invalid URL的可能重复 【参考方案1】:

您可能必须尝试对 URL 参数进行编码。

const url = 'https://api.debounce.io/v1/?api=my_api_key&email=' + encodeURIComponent(email);

文档: https://developer.mozilla.org/en-US/docs/Web/javascript/Reference/Global_Objects/encodeURIComponent

【讨论】:

以上是关于如何修复 DOMException:无法在“XMLHttpRequest”上执行“打开”:调用第三方服务器/api 时 URL Angular HttpClient 无效?的主要内容,如果未能解决你的问题,请参考以下文章

如何修复“无法解决 xamarin android 中“System.Xml”之间的冲突?

文件无法验证为XML定义,如何修复faces-config.xml警告?

未捕获的 DOMException:无法在“范围”上执行“setStart”:偏移量大于节点的长度

未捕获的 DOMException:无法读取“cssRules”属性

WINDOWS 上的 WebSerial API - “DOMException:无法打开串行端口。”

未捕获的 DOMException:无法在“IDBObjectStore”上执行“删除”:事务未处于活动状态