Javascript 如何在按钮中隐藏API连接
我有一个代码,我知道如何使用链接执行特定的API调用,它如下所示Javascript 如何在按钮中隐藏API连接,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我有一个代码,我知道如何使用链接执行特定的API调用,它如下所示 <a class="btn btn-default" href="https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey='.$user.'&Password='.$pass.'&Domain='.$domain.$ext.'" role="button">Restart Transfer</a> $(document).re
<a class="btn btn-default" href="https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey='.$user.'&Password='.$pass.'&Domain='.$domain.$ext.'" role="button">Restart Transfer</a>
$(document).ready(function(){
$("button[name = 'restartTransfer']").click(function(){
window.location = "https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=<?php print $user;?>&Password=<?php print $pass;?>&Domain=<?php print $domain;?>";
});
});
现在我确实是这样做的
<a class="btn btn-default" href="https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey='.$user.'&Password='.$pass.'&Domain='.$domain.$ext.'" role="button">Restart Transfer</a>
$(document).ready(function(){
$("button[name = 'restartTransfer']").click(function(){
window.location = "https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=<?php print $user;?>&Password=<?php print $pass;?>&Domain=<?php print $domain;?>";
});
});
$(文档).ready(函数(){
$(“按钮[名称='restartTransfer'])。单击(函数(){
window.location=”https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=&Password=&Domain=";
});
});
但这并没有隐藏它,它只是启动显示API密钥用户和密码的web浏览器窗口
如何在按钮按下时隐藏API信息(如果可能,在同一页面中)
这个想法是
谢谢。这可能会对浏览器地址栏中的用户隐藏实际URL。但是,它不会保护凭据不被通过分析网络请求或查看网页源来查看。我建议使用PHP代理使其更安全
$("button[name='restartTransfer']").click(function() {
$.ajax({
url: "https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=<?php print $user;?>&Password=<?php print $pass;?>&Domain=<?php print $domain;?>",
type: 'GET',
dataType: 'text/plain',
success: function(data) {
$('#message').text(data); // print results
},
error: function(xhr) {
console.log('Error', xhr);
}
});
});
$(“按钮[name='restartTransfer'])。单击(函数(){
$.ajax({
url:“https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=&Password=&Domain=",
键入:“GET”,
数据类型:“文本/普通”,
成功:功能(数据){
$(“#消息”).text(数据);//打印结果
},
错误:函数(xhr){
console.log('Error',xhr);
}
});
});
这可能会对浏览器地址栏中的用户隐藏实际URL。但是,它不会保护凭据不被通过分析网络请求或查看网页源来查看。我建议使用PHP代理使其更安全
$("button[name='restartTransfer']").click(function() {
$.ajax({
url: "https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=<?php print $user;?>&Password=<?php print $pass;?>&Domain=<?php print $domain;?>",
type: 'GET',
dataType: 'text/plain',
success: function(data) {
$('#message').text(data); // print results
},
error: function(xhr) {
console.log('Error', xhr);
}
});
});
$(“按钮[name='restartTransfer'])。单击(函数(){
$.ajax({
url:“https://testapi.internet.bs/Domain/Transfer/Initiate?ApiKey=&Password=&Domain=",
键入:“GET”,
数据类型:“文本/普通”,
成功:功能(数据){
$(“#消息”).text(数据);//打印结果
},
错误:函数(xhr){
console.log('Error',xhr);
}
});
});
使用curl,您可以使用php安全地完成它
<?php
使用curl,您可以使用php安全地完成它
<?php
由于此脚本在WHMCS环境中运行,并且仅针对我们的员工,因此高安全性不是问题。我只是不想让页面加载到一个白色的api调用页面,为我的员工吐出一堆无用的信息。我只想在按下按钮时执行调用,在后台加载页面时返回一个定制的句子“Complete”:。。因此,此代码将在不离开页面的情况下加载页面:)@SteiniPetur,在我提供的代码中使用$('#message').text('Complete')
。请注意,如果不同域上的api需要启用CORS,那么我遇到了一个问题XMLHttpRequest无法加载。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”。现在我需要和IBS谈谈,问他们我如何在不离开页面的情况下使用他们的API,也许当我将它从testAPI转移到实际IP时,这会起作用,我可以让我们的实际域与之交互。。我会让你知道这是否是我在寻找的答案。我只能想象,如果CORS被启用,或者我可以让他们允许我们的域像这样访问,从控制台错误判断,它告诉我,如果它被启用,我的脚本会运行,按下按钮并返回消息。我认为没有理由不接受这个回答:)因为这个脚本是在WHMCS环境中运行的,并且只针对我们的员工,所以高安全性不是问题。我只是不想让页面加载到一个白色的api调用页面,为我的员工吐出一堆无用的信息。我只想在按下按钮时执行调用,在后台加载页面时返回一个定制的句子“Complete”:。。因此,此代码将在不离开页面的情况下加载页面:)@SteiniPetur,在我提供的代码中使用$('#message').text('Complete')
。请注意,如果不同域上的api需要启用CORS,那么我遇到了一个问题XMLHttpRequest无法加载。请求的资源上不存在“Access Control Allow Origin”标头。因此,不允许访问源“”。现在我需要和IBS谈谈,问他们我如何在不离开页面的情况下使用他们的API,也许当我将它从testAPI转移到实际IP时,这会起作用,我可以让我们的实际域与之交互。。我会让你知道这是否是我在寻找的答案。我只能想象,如果CORS被启用,或者我可以让他们允许我们的域像这样访问,从控制台错误判断,它告诉我,如果它被启用,我的脚本会运行,按下按钮并返回消息。我认为没有理由不接受这一答复:)