[英]sending mail from outside of a website or asp.net application
是否有可能使用Jquery将数据从html页面发布到另一个asp.net网站?
例如说www.site1.com/mail.html- > www.site2.com/mailServ.aspx
使用jquery ajax,我可以使用此代码发布[webmethod]
后面的代码
因此,它将从site1发送而不是同一网站(site2)中的代码
这是我用来将表单数据发布到同一网站应用程序中的Web方法的代码
function jQuerySendMailCsCodeBehind(resluts) {
var SentClientinfo = []
SentClientinfo.push({ key: "SentClientinfo", value: resluts });
var CurrpageURL = "default.aspx/"; <---
var WebmethodName = "StartTest";
var StageIdentifyer = "stage1";
var Post_TargetUrl = CurrpageURL + WebmethodName;
jQueryAajaxNoPostBack(Post_TargetUrl, SentClientinfo, StageIdentifyer);
}
我试图从应用程序外部发布
所以我只是用
var CurrpageURL = "http://www.site2.com/default.aspx/";
来自其他网站(site1)html网站非asp.net,但该想法在现实中行不通(:
因此,是否有一个选项,一个webForms应用程序/ asp.net网站将接受来自另一个ajax / jquery网站代码的请求?
您不能使用javascript
进行跨网站请求。 您需要使用jsonp
jQuery支持jsonp
,请参见以下示例
$.ajax({
type: 'GET',
url: 'http://githubbadge.appspot.com/badge/torvalds',
dataType: 'jsonp',
success: function(json) {
var result = '<h3>' + json.user.login + '</h3>' +
'<p>Languages: ' + json.languages + '</p>' +
'<p>Followers: ' + json.user.followers + '</p>';
$('#badge').append(result);
}
});
出于安全原因,默认情况下,不允许JavaScript访问其他域。 如果您恰巧在登录银行时正在查看我的网站,则您不希望我网站上的JavaScript随银行登录cookie一起访问您银行的网站。
解决它的一种方法是JsonP,但据我所知,它主要用于检索数据。
您可能正在寻找的是跨源资源共享或简短的CORS 。 要实现这一点,您的site2将需要设置一个Access-Control-Allow-Origin
标头,并且要求用户使用支持CORS的浏览器(并非所有浏览器都支持,请参见Wikipedia页面以获取信息)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.