텍스트 영역에서 url의 shorturl을 반환하는 ajax 함수가 있습니다. 대체 텍스트를 사용하여 텍스트 영역의 실제 URL로 바꾸려면 코드가 작동하지 않습니다.텍스트 영역의 문자열을 ajax 응답의 값으로 대체하십시오.
function checkUrl(text) {
var bit_url = "";
var url = text;
var username = "o_1i42ajamkg"; // bit.ly username
var key = "R_359b9c5990a7488ba5e2b0ed541db820";
return $.ajax({
url: "http://api.bit.ly/v3/shorten",
data: {
longUrl: url,
apiKey: key,
login: username
},
dataType: "jsonp",
async: false,
success: function(v) {
bit_url = v.data.url;
}
});
}
내 텍스트 영역에서
$("#urlr").change(function() {
var text = $("#Pushtype_message").val();
var c = "";
var msgtext = "";
var urlRegex = /(\b(https?|ftp|file):\/\/[-A-Z0-9+&@#\/%?=~_|!:,.;]*[-A-Z0-9+&@#\/%=~_|])/ig;
var MsgStr = $("#Pushtype_message").val();
var Arr = text.split(" ");
urllist = new Array();
urluri = new Array();
i = 0;
for (var n = 0; n < Arr.length; n++) {
txtStr = Arr[n];
var urltest = urlRegex.test(txtStr);
if (urltest) {
urllist[i] = txtStr;
}
}
for (var i = 0; i < urllist.length; i++) {
// console.log(urllist[i].toString());
checkUrl(urllist[i]).done(function(result) {
var response = (result.data.url);
console.log(response);
MsgStr.replace(urllist[i], response);
console.log(MsgStr);
$("#Pushtype_message").val(MsgStr);
});
}
});
에 따라 같은 checkurl 기능이 나는이 텍스트 넣어 구현 전화 기능 :
test utl function https://www.google.Fr test success
을이 내 구현
아약스 기능입니다
내 콘솔에 다음 결과가 표시됩니다.
main.js http://bit.****
main.js test utl function https://www.google.Fr test success
알다시피,이 함수는 urlshortner를 반환하지만 초기 텍스트는 여전히 동일합니다. 내 기대 결과 : test utl function http://bit.l****
테스트 성공,하지만이 작동하지 않습니다.
API 자격 증명을 공개하지 마십시오. –
너무 오래 전 메인 프레임을 해킹하고 있습니다. –